什么是常量参数?常量参数是普通参数的一种,但是在函数调用中,地址或地址指向的值,或者两者,可以加const,那么在函数调用中就不会改变你不想改变的东西。举例如下:
void function(const charp,int n)
大家都知道,在变元传递时,仅仅是值传递,比如将一个charpa型地址传递给以上函数,那么pa的值传递过去,被调函数可以用这个值做任何事情,但是和pa没有任何关系,因为改变pa的值就是两种方法,一种是直接对pa赋新值,但是pa不存在与被调函数中,第二种方法是对pa存在的地址上的东西(即pa)进行修改,但是没有传递pa地址。这里函数调用的基础,一定要理解。
上面的参数很多时候不好理解,const charp,怎么理解呢?p就是我们定义的一个指针,因为前面有指针符号
先不管它是啥指针,但我们最终要的指针变量就是p,再看是什么来修饰这个指针,也就是它的类型,类型就是修饰它的东西。 在p前面的东西就是, 他是const char,那么他就是指向cong char 类型的指针,const char又是什么呢?指向字符常量的指针,那么合起来就是指向字符常量的指针的指针,函数调用时,如果又把charpa的值传递给被调函数,那么在void function(const charp,int n)里面,p是地址,那么可以用*p改变p数组中的元素,也就是const char型地址,但是不能用p改变任何东西,因为参数已经有类型了
常量参数和函数调用
最新推荐文章于 2022-03-20 16:20:50 发布