相关疑难解决方法(0)

C中的变量声明放置

我一直认为在C中,所有变量都必须在函数的开头声明.我知道在C99中,规则与C++中的规则相同,但C89/ANSI C的变量声明放置规则是什么?

以下代码使用gcc -std=c89和成功编译gcc -ansi:

#include <stdio.h>
int main() {
    int i;
    for (i = 0; i < 10; i++) {
        char c = (i % 95) + 32;
        printf("%i: %c\n", i, c);
        char *s;
        s = "some string";
        puts(s);
    }
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

不应该在C89/ANSI模式下声明cs导致错误吗?

c declaration c89

121
推荐指数
5
解决办法
8万
查看次数

标签 统计

c ×1

c89 ×1

declaration ×1