Canyou tell me how ths C program run
-
- 帖子: 131
- 注册时间: 2006-10-25 17:50
- 来自: 南京
- 联系:
Canyou tell me how ths C program run
#include<stdio.h>
main()
{
int c;
while(c=getchar()!=EOF)
printf("%d\n",c);
printf("%d - at EOF\n",c);
}
I know the result ,but I don't know how it run.Please tell me .ok?
main()
{
int c;
while(c=getchar()!=EOF)
printf("%d\n",c);
printf("%d - at EOF\n",c);
}
I know the result ,but I don't know how it run.Please tell me .ok?
-
- 帖子: 3182
- 注册时间: 2006-03-10 15:10
- 来自: xi'an China
- 联系:
- BigSnake.NET
- 帖子: 12522
- 注册时间: 2006-07-02 11:16
- 来自: 廣州
- 联系:
-
- 帖子: 35
- 注册时间: 2006-05-04 15:52
-
- 帖子: 3182
- 注册时间: 2006-03-10 15:10
- 来自: xi'an China
- 联系:
-
- 帖子: 28
- 注册时间: 2007-01-16 23:26
- BigSnake.NET
- 帖子: 12522
- 注册时间: 2006-07-02 11:16
- 来自: 廣州
- 联系:
- BigSnake.NET
- 帖子: 12522
- 注册时间: 2006-07-02 11:16
- 来自: 廣州
- 联系:
- efan
- 帖子: 238
- 注册时间: 2006-09-14 21:59
- 来自: 广东
- 联系:
- woodfish1988
- 帖子: 7
- 注册时间: 2007-01-31 23:20
- BigSnake.NET
- 帖子: 12522
- 注册时间: 2006-07-02 11:16
- 来自: 廣州
- 联系:
woodfish1988 写了:正解,ASCII码里面有0了,如果EOF是0,那么正常的字符不就当做了结束符号了?众所周知,ASCII占1个字节,最高位总位0,即位非负数,因此可以用-1作为EOFefan 写了:很明显是-1。。。BigSnake.NET 写了:EOF是NULL=0吧。。newrain 写了:EOF是文件结束标志,在这儿作为输入结束标志,EOF的值为-1,而输入的字符是不可能为负数的,所以要进行构造,构造成一个输入字符的ASCII码值为负数的正数(位数不一样的)。
代码: 全选
# 2 "a.c" 2
main()
{
int c;
while(c=getchar()!=(-1))
printf("%d\n",c);
printf("%d - at EOF\n",c);
}
^_^ ~~~
要理解递归,首先要理解递归。
地球人都知道,理论上,理论跟实际是没有差别的,但实际上,理论跟实际的差别是相当大滴。
要理解递归,首先要理解递归。
地球人都知道,理论上,理论跟实际是没有差别的,但实际上,理论跟实际的差别是相当大滴。