说明:
(1)用数组名作函数参数,应该在调用函数和被调用函数中分别定义数组,且数据类型必须一致,否则结果将出错。例如,在本案例中,形参数组为a[],实参数组为sco[],它们的数据类型相同。
(2)C编译系统对形参数组大小不作检查,所以形参数组可以不指定大小。例如,本例中的形参数组a[]。 如果指定形参数组的大小,则实参数组的大小必须大于等于形参数组,否则因形参数组的部分元素没有确定值而导致计算结果错误。
5.4 变量的作用域与生存期
C语言中所有的变量都有自己的作用域。什么叫“变量的作用域”?打一个比方:每一个变量好比是一盏灯,它所能照亮的区域就是它的“作用域”,在该区域内的任何地方都能“看到”它,自然也就能访问到该变量,出了这个区域就“看不到了” ,因此也就访问不到了。
程序中每个“变量灯”的“功率”大小不一样,它们能照亮的范围也不一样,因此作用域就不一样。由什么来决定作用域的大小呢?C语言规定:变量说明的位置不同,其作用域就不同,据此将C语言中的变量分为“局部变量”和“全局变量”二大类。
5.4.1 局部变量
定义在函数内部的变量称为局部变量(也可以叫内部变量),其作用域为块作用域,即只允许定义该变量的块中语句访问该变量。更准确地说,块作用域的范围是从变量定义处开始,到块的结束处为止。这里所说的块主要是指复合语句。因此,定义于一复合语句中的变量,不但其他函数不能访问,该复合语句以外的语句也不能访问,即便是同一复合语句中的语句,如果它位于变量定义处之前,也不能访问该变量(一样遵循先定义后使用的原则)。这就是“局部”的含义。
上一页 [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] [38] [39] [40] [41] [42] [43] [44] [45] [46] [47] [48] [49] [50] [51] [52] [53] [54] [55] [56] [57] [58] [59] [60] [61] [62] [63] [64] [65] [66] [67] [68] [69] [70] [71] [72] [73] [74] [75] [76] [77] [78] [79] [80] [81] [82] [83] [84] 下一页
|