易码技术论坛

 找回密码
 加入易码
搜索
查看: 143971|回复: 3

[求助]求一个输入函数

[复制链接]
发表于 2004-12-22 23:13:00 | 显示全部楼层
哦,
不用了,自己写了一个
[em04][em04]
发表于 2004-12-23 19:11:00 | 显示全部楼层
#define ENTER_KEY 13
#define LT_KEY 23

long inputn(char start)
{
int i;
int n,sign;
char ch,row,col;
long value;
char numberc[11];
char string[12];
row=start/20;col=start%20;
strcpy(numberc,"0bnmghjtyu");
memset(string,0,12);
sign=1;
n=0;
value=0;
for(;;)
{
n=strlen(string);
Locate(row,col);
memset(_TEXT+start,0,156-start);
printf("%s_",string);
ch=getchar();
for(i=0;i<10;i++)
if(ch==numberc){ch=i+'0';break;}
else if(ch==20)ch='-';


if(isdigit(ch)&&n<10)string[n]=ch;
else if (ch=='-')
{
   if(sign==1)
        {
           memmove(string+1,string,10);
           string[0]=ch;
         }
   else if(sign==-1){memmove(string,string+1,10);string[n-1]=0;}
   sign=-sign;
}
else if(ch==LT_KEY&n)string[n-1]=0;
else if (ch==ENTER_KEY&&n) {string[n]=0;break;}
}
            if(sign==1)i=0;else i=1;
             for(;i<n;i++)
                 {
                 ch=string;
                 value=value*10+(ch&0xf);
                 }
               return sign*value;
            

}


void main()
{
long value;
SetScreen(1);
value=inputn(0);
printf("\n%d",value);
getchar();
}

[此贴子已经被作者于2004-12-23 19:15:52编辑过]

发表于 2004-12-23 19:13:00 | 显示全部楼层
//以Nc2000机型为标准..
/*=========通用键盘定义============*/
//以下为常用到的按键..
#define ENTER_KEY 13 //输入键
#define UP_KEY 20      //方向键上
#define DN_KEY 21      //方向键下
#define RT_KEY 22      //方向键右
#define LT_KEY 23      //方向键左
#define ESC_KEY 27  //[跳出]键

#define PU_KEY 19      //向上翻页键(双上键)
#define PD_KEY 14       //向下翻页键(双下键)
#define F1_KEY 28     //[插入]键
#define F2_KEY 29     //[删除]键
#define F3_KEY 30     //[查找]键
#define F4_KEY 31     //[修改]键
#define HELP_KEY 25 //[求助]键
#define SHIFT_KEY 26//[中英数]键
#define CAPS_KEY 18  //[输入法]键
#define SOUND_KEY 15//发音键
 楼主| 发表于 2004-12-22 13:20:59 | 显示全部楼层 |阅读模式
LAVA的

输入数字用的

能返回一个long 型的数字

各位谁有?

先谢啦
[em04]
您需要登录后才可以回帖 登录 | 加入易码

本版积分规则

Archiver|手机版|小黑屋|EMAX Studio

GMT+8, 2024-4-26 04:42 , Processed in 0.008451 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表