社区
C语言
帖子详情
关于EOF的问题
novice2008
2009-02-12 06:16:03
#include <stdio.h>
int main()
{
char ch;
while((ch = getchar()) != EOF)
putchar(ch);
return 0;
}
为什么我输入CTRL+Z没反应呢?连屏幕上显示^z都没有
...全文
186
17
打赏
收藏
关于EOF的问题
#include int main() { char ch; while((ch = getchar()) != EOF) putchar(ch); return 0; } 为什么我输入CTRL+Z没反应呢?连屏幕上显示^z都没有
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
17 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
chaoyue2046
2009-07-07
打赏
举报
回复
终于找到一个和我问题一样的,不知lz问题解决了没有
如果解决了,麻烦告诉我一下,不胜感激啊
Linux校园社区
2009-02-15
打赏
举报
回复
修改下:
是Ctrl+Z,回车,Ctrl+Z,再回车。
Linux校园社区
2009-02-15
打赏
举报
回复
回车,Ctrl+Z,再回车。
thinkboy234
2009-02-15
打赏
举报
回复
我怎么按着没问题
ctrl+z,回车
guojing1009
2009-02-13
打赏
举报
回复
Ctrl+Z应该就退出循环了吧,我还看了个方法,好象是按alt+65535
novice2008
2009-02-13
打赏
举报
回复
[Quote=引用 10 楼 wyswyg63 的回复:]
引用 4 楼 icemine 的回复:
因为getchar()将输入字符放入了线性缓冲区中,所以Ctrl+Z后要回车
在一个,如果是Unix/Linux下,一般使用Ctrl+D
再一个可能是,
因为EOF为-1,可能会有些系统把char 默认做unsined char,这样的话,ch就不会接受到-1了,
所以很多人也会将char ch 换作 int ch;
顶啊,getchar返回的是int类型,应该int ch;声明
[/Quote]
这和int,char 没关系,至少屏幕上总会显示吧
novice2008
2009-02-13
打赏
举报
回复
eclipse CTRL-Z是撤销,CTRL-Y是前进
现在能前进不能撤销。。。
也不是键盘问题,这是怎么回事呢。。。。
wyswyg63
2009-02-12
打赏
举报
回复
[Quote=引用 4 楼 icemine 的回复:]
因为getchar()将输入字符放入了线性缓冲区中,所以Ctrl+Z后要回车
在一个,如果是Unix/Linux下,一般使用Ctrl+D
再一个可能是,
因为EOF为-1,可能会有些系统把char 默认做unsined char,这样的话,ch就不会接受到-1了,
所以很多人也会将char ch 换作 int ch;
[/Quote]
顶啊,getchar返回的是int类型,应该int ch;声明
waizqfor
2009-02-12
打赏
举报
回复
[Quote=引用 8 楼 novice2008 的回复:]
我特地去下个TC,换了键盘试试,还是这样,这是怎么回事
[/Quote]
都换键盘了啊 无奈啊
晕了 我是搞不明白了
novice2008
2009-02-12
打赏
举报
回复
我特地去下个TC,换了键盘试试,还是这样,这是怎么回事
waizqfor
2009-02-12
打赏
举报
回复
[Quote=引用 6 楼 novice2008 的回复:]
引用 5 楼 waizqfor 的回复:
我刚才试了下LZ的程序 不可能没有^Z的符号啊
难道LZ是linux下的吗 如果是的话 那就ctrl+D 解决
不是LINUX,会不会是程序以外的问题?我以前完全可以用的呀
[/Quote]
估计是 我从来没有你这样的事 不行装下编译器吧 我刚才都是拿VC6给你实验的 没啥问题
novice2008
2009-02-12
打赏
举报
回复
[Quote=引用 5 楼 waizqfor 的回复:]
我刚才试了下LZ的程序 不可能没有^Z的符号啊
难道LZ是linux下的吗 如果是的话 那就ctrl+D 解决
[/Quote]
不是LINUX,会不会是程序以外的问题?我以前完全可以用的呀
waizqfor
2009-02-12
打赏
举报
回复
我刚才试了下LZ的程序 不可能没有^Z的符号啊
难道LZ是linux下的吗 如果是的话 那就ctrl+D 解决
冰矿
2009-02-12
打赏
举报
回复
因为getchar()将输入字符放入了线性缓冲区中,所以Ctrl+Z后要回车
在一个,如果是Unix/Linux下,一般使用Ctrl+D
再一个可能是,
因为EOF为-1,可能会有些系统把char 默认做unsined char,这样的话,ch就不会接受到-1了,
所以很多人也会将char ch 换作 int ch;
na2650945
2009-02-12
打赏
举报
回复
学习了。
Claude
2009-02-12
打赏
举报
回复
up……
waizqfor
2009-02-12
打赏
举报
回复
[Quote=引用楼主 novice2008 的帖子:]
#include <stdio.h>
int main()
{
char ch;
while((ch = getchar()) != EOF)
putchar(ch);
return 0;
}
为什么我输入CTRL+Z没反应呢?连屏幕上显示^z都没有
[/Quote]
LZ ctrl+z 再按回车
关于文件读取的
eof
问题
本文探讨了C++中文件读取时遇到的
eof
问题
,指出
eof
()函数在读取到文件内容最后一个字符后的一次额外读取才会返回true。通过示例代码展示了如何使用peek()函数避免这种
问题
,以更准确地判断文件是否结束。
EOF
空格
问题
本文介绍了一个关于Shell脚本中
EOF
使用不当导致的
问题
及解决方案。具体
问题
是在使用<<
EOF
进行here-document定义时,在
EOF
关键字后出现了空格,导致脚本执行错误。文章给出了正确的用法并解释了原因。
linux
eof
空格,
EOF
中空格和tab的
问题
本文通过实例演示了在Shell脚本中使用
EOF
进行重定向时,空格与Tab键的不同导致的
问题
。展示了如何通过复制粘贴操作引入错误,并解释了其背后的原理。
文件操作
eof
()的
问题
本文探讨了C++中使用
eof
()判断文件为空的
问题
,并提供了一种更可靠的方法:使用peek()函数配合
EOF
来准确判断文件是否为空。通过示例代码详细解释了这一技巧。
记一次HTTP请求返回
EOF
的
问题
博客记录了一次HTTP请求返回
EOF
的
问题
,包含
问题
背景、排查过程、结论、思考以及相关代码,聚焦于信息技术领域的网络请求
问题
。
C语言
70,038
社区成员
243,247
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章