代码位置不同为什么会报错?【C语言基础问题】

gets()语句放在第8行会报错,第10行就不会报错,菜鸟不明白是怎么回事了,求解。
代码如下:

 # include <stdio.h>
# include <string.h>

int main()
{
    char string[100];
    char c;
    gets(string);
    int i, num = 0, word = 0;
    //gets(string);
    for(i = 0; (c = string[i]) != '\0'; i++)
    {
        if(c == ' ') word = 0;
        else if(word == 0)
        {
            word = 1;
            num++;
        }
    }
    printf("%d", num);
    return 0;
}

报错提示如下:
--------------------Configuration: 25 - Win32 Debug--------------------
Compiling...
25.c
F:\Microsoft Visual Studio\mine\25.c(9) : error C2143: syntax error : missing ';' before 'type'
F:\Microsoft Visual Studio\mine\25.c(11) : error C2065: 'i' : undeclared identifier
F:\Microsoft Visual Studio\mine\25.c(13) : error C2065: 'word' : undeclared identifier
F:\Microsoft Visual Studio\mine\25.c(17) : error C2065: 'num' : undeclared identifier
执行 cl.exe 时出错.

25.obj - 1 error(s), 0 warning(s)

查看全部
grtorange
小飞好可爱
2015/08/08 04:12
  • c
  • 字符流
  • 点赞
  • 收藏
  • 回答
    私信
满意答案
查看全部

7个回复