August 2021
Intermediate to advanced
450 pages
9h 36m
Chinese
参数传递过程就是用函数调用中指定的实际参数(actual argument)初始化函数的形式参数的过程,考虑如下代码:
只要初始化语句T x=y;合法,函数调用f(x)就是合法的,当其合法时,两个x(初始化的变量和函数的参数)会获得相同的值。例如:
注意,用y初始化x时,我们必须将一个整数转换为一个双精度数。在调用函数f()时,会进行同样的操作。f()收到的双精度值与变量x中保存的值是一样的。
类型转换一般情况是很有用的,但偶尔会带来奇怪的结果(参见3.9.2节)。因此,我们对类型转换必须小心。例如,如果一个函数要求一个整数,那么向它传递一个双精度参数就不是一个好主意:
如果你确实是想将一个双精度值截取为一个整数,请使用显式类型转换:
使用显式类型转换的代码,其他程序员容易从中看出你的思路。 ...