在哪里写定义?

Where to write the definition?

很多人告诉我,在 C 中,定义必须在 main() 块开始之后,而不是在使用之前定义。您还可以对函数进行计数,因为函数定义与同一主题相关。 在 Whosebug 和 web 上做了一些搜索后,我找不到我的问题的答案,或者我只是找不到要搜索的关键字。

int main(){ //defining at the beginning of main
int x=0;
.
.
.
function(x);
return 0;
}

int main(){ //defining right before using
.
.
.
int x=0;
function(x);
return 0;
}

您可以在程序中的任何位置声明变量,但应始终在使用变量之前声明。

更好的选择是在函数的开头一起声明所有变量,因为它 improves readability 在代码中。

declare/define 变量在 statement/function 正文中的任何位置都是完全没问题的。

在称为 "C90" 的旧版 C 标准中,您被迫总是 declare/define 块开头的变量。但是,这个限制很久以前就被取消了。

不过,将所有变量 declare/define 放在块顶部的同一位置可能仍然很方便,这样您在阅读代码时可以轻松找到它们。

在块的顶部或在使用之前声明变量没有性能差异。在这两种情况下,编译器都会生成相同的机器代码。