gpt4 book ai didi

c - 在调用函数后定义变量给我一个编译错误

转载 作者:太空宇宙 更新时间:2023-11-04 01:20:44 24 4
gpt4 key购买 nike

这行得通

main()
{
int c;
struct books Book1;
c = getchar( );
return 0;
}

这不是

main()
{
int c;
c = getchar( );
struct books Book1;
return 0;
}

Expression syntax in function main (and points to the space after the word 'struct')

这也不行,因为B的定义在c = getchar();下面,错误指向"int"和"b"之间的空格

main()
{
int c;
struct books Book1;
c = getchar( );
int b;
return 0;
}

问题是我必须在调用函数之前定义每个变量,还是其他原因?

这是 C 的工作方式,还是 turbo C 的东西?

编辑:在意识到我的意思是说“定义”而不是“声明”后发现了重复

最佳答案

在 C89 中,变量必须在 block 的开头声明。自 C99 以来,该限制已被删除。

Turbo C 这种过时的编译器不支持此 C99 功能也就不足为奇了。

关于c - 在调用函数后定义变量给我一个编译错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43462732/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com