用C填充形状

问题描述

| 我编写了一个程序,用星号填充封闭的数字。由于某种原因,它不接受标记值EOF(Ctrl-D)。为什么是这样? #include \“ usefunc.h \” #定义身高100 #定义宽度100 void showRow(int number [],int size_numbers){     我     printf(\“ [\”);     对于(i = 0; i nes,int max_buf){     int i,j;     对于(i = 0; i <行; i ++){         对于(j = 0; j 代码即可。它并没有完全打印出来。这是怎么回事?? 该代码的另一个更新。这次我要复制temp的值。但是,我得到
Bus error
-我做错了什么?     

解决方法

        你要:
int temp;
EOF是整数值,而不是char。     ,        
while ((temp = getchar()) != \'\\n\') {
    shape`[i][j]` = temp;
    j++;
}
我怀疑一旦达到
EOF
,就永远不会消失。我的意思是,
getchar
可能会继续向您扔ѭ3and,您问“不是Not6ѭ?好吧,不需要停下来”。 另外,@ Neil Butterworth在他的回答中所说的真的很明智。