2011-04-19 63 views
3

C语言要求程序中使用的所有变量都应在任何其他语句之前声明。C是否要求在范围起始处声明变量?

这是什么意思?是否为了可读性?如果是为了可读性,那么为什么其他语言不遵循相同的规则?

我个人更喜欢在开始时声明所有的变量。

版主:请删除,如果这是脱离主题或已被问及。我只是想知道提高我的知识。谢谢。

+4

不是当前的C标准。在C99中,变量声明和代码可以随意混合使用。 – pmg 2011-04-19 09:17:04

+3

这不是'C99'标准所要求的。 – Mat 2011-04-19 09:17:25

+1

C99没有这个限制。另请参阅:http://stackoverflow.com/questions/288441/variable-declaration-placement-in-c – 2011-04-19 09:18:10

回答

4

像其他人在评论中说现在它不再是强制性的。无论如何,这不是为了可读性。 C是一种非常古老的语言,它的一个独特之处在于C文件只需一次解析即可编译。我认为语言的最早版本选择在开始时声明变量以简化解析。