c语言问题:对用户输入的字符流(以ctrl+z结束)中的行,。。。这里的ctrl+z怎样表示?单词怎样统计
若以0为结束标志,我可以写c=getchar()!=‘0’,但以ctrl+z,我就不知道怎么表示了。ctrl+z有ASC11吗?...
若以0为结束标志,我可以写c=getchar()!=‘0’,但以ctrl+z,我就不知道怎么表示了。ctrl+z有ASC11吗?
展开
4个回答
展开全部
Ctrl+Z然后回车是Windows控制台输入EOF的方法。(*nix则是Ctrl+D。)
EOF(end of file)是文件结束符,表示流的终止标识,在文件处理中常用。
EOF在C语言标准库中定义为一个宏,替换为整数字面量-1(ASCII是0~127,这个值不包含于其中;EOF为int类型,为了返回这个值,很多库函数的返回值都是int而不是char;转化为char后可能为-1和255,具体是哪个要看编译器中char类型是否当作有符号数)。包含<stdio.h>后可以用(c=getchar())!=EOF,直接判断,这里c是字符。如果c是标志变量,那么可以用c=getchar()!=EOF。
----
LS胡扯,回车符(CR, carriage return)是'\r',ASCII是13。
====
[原创回答团]
EOF(end of file)是文件结束符,表示流的终止标识,在文件处理中常用。
EOF在C语言标准库中定义为一个宏,替换为整数字面量-1(ASCII是0~127,这个值不包含于其中;EOF为int类型,为了返回这个值,很多库函数的返回值都是int而不是char;转化为char后可能为-1和255,具体是哪个要看编译器中char类型是否当作有符号数)。包含<stdio.h>后可以用(c=getchar())!=EOF,直接判断,这里c是字符。如果c是标志变量,那么可以用c=getchar()!=EOF。
----
LS胡扯,回车符(CR, carriage return)是'\r',ASCII是13。
====
[原创回答团]
参考资料: 原创
展开全部
while(scanf("%d",&n)!=EOF)
EOF也可以换为-1。
这个输入就是以ctrl+z结束
EOF也可以换为-1。
这个输入就是以ctrl+z结束
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
相当于 回车
ascii : 26
ascii : 26
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询