任何表达式都有值和属性两个基本属性。
例如:void func();首先从语法上规定没有返回值的函数调用表达式是void类型,有一个void类型的值。然后重语义规定void类型的表达式不能参与运算。
函数声明:比如void function(void);
函数定义:只有带函数体的声明才是函数定义;
函数原型:比如void function(void)没有分号、
全局变量:只能用常量表达式来初始化,如果不初始化的话,系统自动初始化为0。
局部变量:可以用类型相符的任意表达式来初始化。如果局部变量在定义的时候不初始化,,则其值是不确定的,所以,局部变量在使用之前一定要先赋值。
语句块:用{}括起来的若干天语句。不能在”}“后加分号,不然就成了一条新的语句了。
单独使用语句块通常是为了定义一些比函数的局部变量更'局部"的变量。
和函数的局部调用同样的道理,每次进入语句快的时候,分配空间,退出的时候,释放空间。
在C语言中;a<b<c,不能表示b既大于a又小与c。
return语句:作用是提供整个函数的返回值,结束当前函数并返回到调用它的地方。(在不需要返回值的函数中叶可以用的)
c语言中传参的规则是”call by value“,即是按值传递。返回的是变量的值,而不是变量的本身,因为变量马上就要被释放了。