编程论坛's Archiver

scl512 发表于 2008-6-23 19:25

不知道是不是TC的BUG导致的

int caidan(int n);
void shuru();
char text[1000];
int main(int argc, char *argv[])
{    int n=0;
        for (; ; )
        {
        scanf("%d",&n);
                switch (n)
                {
                case 1:shuru();break;
                case 2:exit(0);break;
                  default :break;
                }
        }
}


void shuru(){
   int i=0;
   char c;
   while ((c=getchar())!=EOF)
   {
           text[i++]=c;
   }
}
第一次输入 数字会被 存于 n,但是第二次就不读数据去存n了,我不明白这是怎么回事。好像是TC编译器的BUG把。

StarWing83 发表于 2008-6-24 08:09

缓冲区问题……

顺便说说,你代码逻辑混乱啊……

页: [1]

Powered by Discuz! Archiver 6.1.0  © 2001-2007 Comsenz Inc.