名字的作用域指的是程序中可以使用该名字的部分。对于在函数开头声明的自动变量来说,其作用域是声明该变量的函数。不同函数中声明的具有相同名字的各个局部变量之间没有任何关系。函数的参数也是这样的,实际上可以将它看作是局部变量。  外部变量或函数的作用域从声明他的地方开始,到其所在的(待编译的)的文件的末尾结束。  另外一方面,如果要在外部变量的定义之前使用该变量,或者外部变量的定义与变量的使用不在同一个... Read More
posted @ 2009-10-26 17:13 老保 Views(448) Comments(0) Diggs(0)
函数atof的声明与定义必须一致。如果atof函数与调用它的主函数main放在同一源文件中,并且类型不一致,编译器就会检测到该错误。但是如果atof函数是单独编译的,这种不匹配的错误就无法检测出来。如atof返回double类型的值,而main函数却按照int类型处理,结果就有很大的偏差。  事实上,如果没有函数原型,则函数将在第一次出现的表达式中被隐式声明,例如:  sum += atof(li... Read More
posted @ 2009-10-26 16:02 老保 Views(425) Comments(0) Diggs(0)
ANSI C同较早版本C语言之间的最大区别在于函数的声明与定义方式不同。按照C语言的最初定义,函数写出如下形式:  power(base, n)  int base, n;  {    int i, p;    p = 1;    ........  }其中,参数名在圆括号内指定,参数类型在花括号之前声明。如果没有声明某个参数的类型,则默认为int类型。函数体与ANSI C中的形式相同。  在C语... Read More
posted @ 2009-10-26 15:41 老保 Views(414) Comments(0) Diggs(0)