700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 基本类型 指针 双指针作为函数参数

基本类型 指针 双指针作为函数参数

时间:2019-07-03 02:38:52

相关推荐

基本类型 指针 双指针作为函数参数

1.指针与双指针的内存示意图

函数内定义如下变量

Int* a=1;

Int** b=2;

a[0x********] --->栈内存地址n(值为1);

b[0x********] --->*b[0x********] ---->栈内存地址m(值为2);

2.当基本类型,指针,双指针作为函数参数传入函数

#include<iostream>using namespace std;//修改从函数外部传来的变量的数值void fun(int* vartype){int w = 111;*vartype = 111; //只能通过直接修改值的方式修改 cout << "*" << endl;}//修改从函数外部传来的变量的数值void fun(int **vartype){int w = 222;*vartype = &w;//通过修改地址方式修改值 //**vartype = 222; //通过直接修改值的方式修改cout << "**" << endl;}//修改从函数外部传来的变量的数值void fun(int ***vartype){int w = 333;**vartype = &w;//通过修改地址方式修改值//***vartype = 333; //通过直接修改值的方式修改cout << "***" << endl;}void main(){int a = 1;int *b = &a;int **c = &b;fun(&a); //函数内改变a的值cout << "a=" << a << endl;fun(&b);//函数内改变b的值cout << "*b=" << *b << endl;fun(&c);//函数内改变c的值cout << "**c=" << **c << endl;system("pause");}输出结果:*a=111***b=222*****c=333请按任意键继续. . .

总结:

想要在函数内部改变函数外部传入的参数的值,需要传入外部变量的地址

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。