用户可以在使用scanf的输入中键入空终止符,以便输入的长度为0吗?
char msg[1000];
scanf("%1000s",msg); // the user would type nothing: '' or '\0'
最佳答案
在许多系统上,答案是"is"。
通常,魔术序列是Control- @。
@的字符代码通常为64,比A(65)少一个。控件A是字符代码1;少一位是字符代码0,又名'\0'
。
请注意,要获得零长度输入,您必须输入空字节作为第一个非空格字符,并且仍然需要按回车键才能输入。您的程序会发现很难可靠地识别在空字节之后输入的其他内容。