下面的代码使用 getchar() 来接受一行输入。
#include <stdio.h>
#include <stdlib.h>
int main()
{
char *rawString = (char *)malloc(200*sizeof(char));
char *rawStringInitial = rawString;
char c;
c=getchar();
while(c!='\n')
{
*rawString=c;
rawString++;
c=getchar();
}
*rawString='\0';
printf("\n[%s]\n",rawStringInitial);
return(0);
}
打字时,如果我按退格键,getchar() 是否也应该接收它并将其存储在 rawString 指向的位置?但是,输出仅显示最终字符串,没有任何特殊字符。有人可以解释为什么吗?