[英]How do I read in white spaces with scanf?
看到空格后,它将完全停止读取代码。 如何更改我的代码,使其读入空白
char line[300];
printf("Enter a string to be checked: ");
scanf("%s", line);
我尝试通过重定向输入的字符串是:
((aa)<> [[[[{[x []]] <>)
您可以使用scanf的fgets intsead。 例如:
fgets(line, 1024, stdin);
您应该使用fgets(line, size, stdin);
如先前发布的。 您永远不要使用gets()
,因为每次都期望输入大小相同。 至少gcc的编译器会警告您不要使用它。
%s匹配非空格字符序列; 下一个指针必须是指向char的指针,并且数组必须足够大以接受所有序列和终止NUL字符。 输入字符串停在空白处或最大字段宽度处,以先到者为准。
需要选择其他格式的字符串。 从输入字符串中还不清楚您到底要完成什么。
请检查代码。
printf("Enter a string to be checked: ");
gets( line);
puts(line);
输出:-
Enter a string to be checked: ( ( a a ) < > [ [ [ { [ x ] ]]] <>)
( ( a a ) < > [ [ [ { [ x ] ]]] <>)
Press any key to continue . . .
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.