关于c语言getchar和敲回车的问题

首先明确几个点:

字母和数字是可见的,空格和换行是不可见的。getchar这个函数的特点是,它可以读取换行符“\n”,但scanf不行。控制台输入是以回车作为结束标志的而getchar会读取回车,它是没法分辨,这个回车到底是作为字符输入,还是作为输入结束的标志。一般不会用getchar函数读取字符的,除非要读取回车字符。
那么如何做到既能读取一个回车又能顺利结束输入呢?

char c = getchar();

你可以再多加一行代码getchar()。比如上面的代码,在c = getchar 后面再加一行getchar。即:

char c = getchar();
getchar();

版权声明:本文为qhsr9177原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。