C语言为什么要规定对所用到的变量要“先定义,后使用”。这样做有什么好处?

如题所述

我觉得主要是因为C语言中变量是要占据内存空间的,如果随便定义使用在管理上不方便,而且可能会造成变量的烂使用,导致一些不必要的错误。比如php,语法结构比较松散,在使用起来虽然可以“随心所欲”,变量可以不声明而直接使用,但是运行效率比较低,而且如果处理不当会有一些意想不到的错误。比如变量的多次赋值导致最后得到的值和你所期望的不一样。而且变量名毕竟是有限的,而且名字可能会有重复,在一个大的工程里面,你不可能记住所有变量的名字。。。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-10-21
举个例子吧
假如对于指针变量来说若只声明而不进行初始化会导致空针异常这样的问题。
变量先定义后使用这是一个非常好的变成习惯,可以避免许多莫名其妙的错误,在实际工作中,很多时候程序员花费大量的时间在寻找程序出现的问题上而往往这些问题都是由于没有良好的编程习惯粗心大意造成的。随着代码数量越来越多,工程越来越大,后面的代码维护变得异常艰难,所以说不论从个人编码还是对于后边的代码维护来说,变量先定义后使用都是一个好习惯。
第2个回答  2011-10-26
除了内存的原因外
实际的开发中,定义变量在提高源代码的安全性上面是很重要的。
如果c中不定义就能使用变量的话会发生上面情况呢?下面举个例子:
假如说我有一个全局变量money在代码中有50处使用到。在代码的第12345行我不小心将money写成了menoy但是由于变量不需要事先声明的。说以编译器还是能正常编译。但是程序在运行期间却产生了逻辑性的错误。这个错误要排除简直是千难万难了。

而正常的c程序比如我先声明了变量int money 在程序中却不小心写成了menoy的话,只要menoy是没有声明过的变量。编译器是绝对会报错的。本回答被网友采纳
第3个回答  2011-10-21
在程序中,有好多的数据,如果,不给他定义,那么它(计算机)不知道是什么东东,会报错!
第4个回答  2011-10-21
这就好比问:为啥三餐吃饭撒...人家规定的,没必要深究
相似回答