作者lovemeorhim (blackeyes)
看板b96902HW
标题[问题] 单班计程
时间Sat Oct 13 03:19:29 2007
EOF
是一个字元还是什麽格式的呀XXXD
我用Dev要按什麽才是代表EOF
好心人士请解答...
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.112.241.20
1F:推 rbx:我知道工作站是ctrl+d 10/13 03:28
2F:→ purincess:windows的command prompt应该是ctrl+z吧 10/13 03:35
3F:→ ryannecheng:unix是ctrl+d windows是ctrl+c 10/13 12:15
4F:推 imprazaguy:其实你可以去wiki查,结果是windows下为Ctrl+Z 10/13 13:46
5F:推 primes:是ctrl+c 经助教证实过 10/13 21:14
6F:推 DongWei:EOF是ctrl+z...ctrl+c是强制结束... 10/13 23:00
7F:推 imprazaguy:虽然争辩这个问题没有什麽太大的意义,不过我还是去测 10/13 23:12
8F:→ imprazaguy:试一下,测试平台是WindowsXP,编译器VC++。 10/13 23:13
9F:→ imprazaguy:使用scanf等等有buffer的IO函式,你输入EOF不会马上动 10/13 23:14
10F:→ imprazaguy:做,需要再按下Enter。这点跟Linux不同,Linux下会直接 10/13 23:15
11F:→ imprazaguy:读取。不过两者有个相同的地方就是,都必须只输入EOF才 10/13 23:17
12F:→ imprazaguy:会动作,若之前有包含别的字元就没反应 10/13 23:19
13F:→ imprazaguy:结论:按下Ctrl+C,在Linux与Window中同样是强制中断, 10/13 23:20
14F:→ imprazaguy:会直接跳出。 10/13 23:22
15F:→ imprazaguy:EOF在Windows下是Ctrl+Z,Linux下是Ctrl+D,不过前者需 10/13 23:22
16F:→ imprazaguy:按下Enter才会读取EOF,但後者不用。 10/13 23:23
17F:→ imprazaguy:结束了,感谢你看完,我觉得好空虚啊~~! 10/13 23:24
18F:→ imprazaguy:附上测试用的Code 10/13 23:26
19F:→ imprazaguy:#include <stdio.h> 10/13 23:26
20F:→ imprazaguy:int main() 10/13 23:26
21F:→ imprazaguy:{ 10/13 23:27
22F:→ imprazaguy: while(getchar()!=EOF) ; 10/13 23:27
23F:→ imprazaguy: printf("get EOF"); 10/13 23:27
24F:→ imprazaguy: getchar();/* please press enter to leave. */ 10/13 23:27
25F:→ imprazaguy: return 0; 10/13 23:28
26F:→ imprazaguy:} 10/13 23:28