发布网友 发布时间:2022-04-22 09:05
共3个回答
热心网友 时间:2024-09-01 11:15
在不同平台,输入回车,getch()将返回不同数值,而getchar()统一返回10(即\n)
1)windows平台下ENTER键会产生两个转义字符 \r\n,因此getch返回13(\r)。
2)unix、 linux系统中ENTER键只产生 \n ,因此getch返回10(\n)。
3)MAC OS中ENTER键将产生 \r ,因此getch返回13(\r)。
getch();并非标准C中的函数,不存在C语言中。所以在使用的时候要注意程序的可移植性。
因此,你改成判断 if ( a[i]=='\r')
break;
再试试
热心网友 时间:2024-09-01 11:16
加入
#include <conio.h>
就可以了
热心网友 时间:2024-09-01 11:15
Windows 下回车符不是 "\n" 而是 "\r\n"(ASCII 13),Linux 下回车符才是 "\n"(ASCII 10)。所以你要判断的应该是 if (a[i] == 13)。