C语言中的字符输入以及符号常量EOF
来源:互联网 发布:瑜伽服推荐知乎 编辑:程序博客网 时间:2024/04/25 19:13
我使用的系统是centos5.5,编译器是gcc 2.5。
程序如下:
//程序作用:验证表达式getchar()!=EOF时的值是0还是1.
#include<stdio.h>
main()
{
int c;
while(c=getchar()!=EOF) //!=的优先级比=的优先级高,故表达式从右往左结合
printf("%d\n",c);
printf("%d - at EOF\n",c);
}
gcc编译后,生成a.out文件。
./a.out执行,我输入如下数据:
2回车
输出:
1
1
怎么会输出两个1?仔细想想,回车也是一个字符,所以实际是两次输入,故输出两个1。也说明当输入不等于EOF时,表达式getchar()!=EOF值是1。
接着输入:
回车
输出:
1
输入:-1回车
输出:
1
1
1
‘-’,1,‘回车’共3个字符,故输出3个1。
这时候我想怎么结束输入呢,我的系统下是 Ctrl键+D。
按下Ctrl键+D,即相当于输入EOF,输出为:
0 - at EOF
这说明输入等于EOF时,表达式getchar()!=EOF值是0。
因为EOF是定义在头文件<stdio.h>中,故可以在程序最后加入下行代码看EOF的值:
printf("%d\n",EOF);
输出结果是-1。
好了,每天进步一点点。
- C语言中的字符输入以及符号常量EOF
- C语言字符输入的EOF
- C语言--符号常量
- C语言中的EOF
- C语言中的EOF
- C语言中的文件中止标志EOF如何输入
- C语言中的字符变量和字符常量
- C语言常量与符号常量
- 关于C语言中的EOF
- C语言中的EOF是什么?
- C语言中的EOF是什么?
- C++climits中的符号常量
- C语言中输入结束符EOF
- C语言里面如何输入EOF
- EOF,C语言输入多组数据
- c语言中的字符类型指针赋值字符串常量
- C语言中的常量
- C语言中的常量
- Extjs开发遇到的问题
- OpenCV如何获取视频当前的一帧图像
- 根据表名获取表字段信息
- 基于 ThinkPHP 实现: 流水号类 ( SN.class.php )
- Expressing your anger is good for your longevity
- C语言中的字符输入以及符号常量EOF
- new和delete http://hi.baidu.com/lewvan/item/4c38d40d
- GNU C program execute path trace method
- Popup menu with nice title
- nginx与php缓存的使用详解
- JDBC 学习笔记
- Unity 应用程序的一些方法,
- ACM 推荐blog汇总及OJ
- Ubuntu12.10 下搭建基于KVM-QEMU的虚拟机环境(十六)