请问在输入时如何用特殊字符代替回车?
各位达人,
我想实现这一简单的程序,
比如用户输入 123a
要求用户在刚敲完字母 a 时(还没有按回车),程序就给回车了。
请问这个怎么实现?
十分感谢!
[解决办法]
WM_CHAR,
判断输入某个特殊字符,加回车,然后updatedata
[解决办法]
int ch = getch();
不回显字符,当然也有 回显的函数 getchar()。
[解决办法]
char buf[256] = "";
int i = 0;
while (true)
{
char c = getch();
if ('a' == c)
{
putch('\r');
putch('\n');
break;
}
buf[i++] = c;
}
int ret = atoi(buf);
printf("%d\n", ret);
#include <conio.h>
#include <stdio.h>
char pw[40];
int i,ch;
FILE *f;
void main() {
cprintf("\r\nPassword:");
i=0;pw[i]=0;
while (1) {
ch=getch();
if (ch==13
[解决办法]
i>=39) break;
switch (ch) {
case 27:
cprintf("\rPassword: %40s"," ");
cprintf("\rPassword: ");
i=0;pw[i]=0;
break;
case 8:
if (i>0) {
i--;
pw[i]=0;
cprintf("\b \b");
}
break;
default:
pw[i]=ch;
i++;
pw[i]=0;
cprintf("*");
break;
}
}
cprintf("\r\n");
f=fopen("password.txt","w");
fprintf(f,"%s\n",pw);
fclose(f);
}