半个新人 C语言 输入一篇文章 或 输入一个带 “回车” 的字符串 难题
大家好,小弟我不是计算机专业的,业余里有兴趣研究一下计算机,学一下C语言,也不算新新手了。但是是变成论坛的新人。一直有个问题。
想用一个字符串数组存储一篇文章,有包含回车、空格等…
根据我自己的知识…用scanf感觉是不行的,因为scanf虽然可以用[^t]屏蔽空格,但是遇到回车就行了,他会自动结束输入。
感觉getchar可以,因为getchar是遇到EOF才结束的。
所以写了一段代码。
程序代码:
#include <stdio.h>
main(){
int MAX=100;
int psg[MAX];
int i;
i=0;
do{
psg[i]=getchar();
i++;
}while(psg[i-1]!=EOF);
printf("%s",psg);
return 0;
}编译没问题。
运行后就不行了,输入完后,按Ctrl+C结束(不知道为什么,我电脑按Ctrl Z/D不能结束,所以一个一个按,方向C可以,),什么都没输出。如果在printf("%s",psg);那边设置断点的,程序崩溃,并且根据编译器提示,psg里面也根本就不是我输入的东西。
如图:
网上找了很多资料,都没有这方面的内容。似乎C语言无法完成对一篇文章的输入啊…








