c语言学习模拟密码输入的时候,需要判断删除键进行退格处理,但是删除键不是可显示字符,怎么办呢?
我们都知道删除键虽然不是可显示字符,但是却可以通过ascii码进行判断。
从ascii表我们可以看到,删除键的ascii是127,具体代码如下:
#include <stdio.h>
#include <stdlib.h>
int main() {
char ch = 0;
system("stty -icanon");
system("stty -echo");
while((ch = getchar()) && ch != '\n') {
if (ch == 127) {
printf("*");
}
}
system("stty icanon");
system("stty echo");
return 0;
}
按退格键的时候,会打印*,回车终止程序。