C++回顾(1)----指针及其传参方法

马上就要参加实习面试了,C++的某些问题却一直困扰着我,所以乘此机会回顾一下C++中自认为的难点。

首先要提的是--------指针,这是学习C语言来出现的问题,到底指针是什么,使用时的方法却一直傻傻搞不清。

1、指针是什么?

百科和书籍中说了很多,其实指针就是一个变量,只不过这个变量有些特殊,特殊在他的值是内存的地址而已,所以我们要特殊申明,所以有些人称指针就是地址的说法我觉得也是通俗可行的。

2、指针的申明?

指针怎么声明,学习过C语言的同学都看过类似的一行代码:

int *countPtr;

int y = 5;

countPtr = &y;

由上可知,*countPtr = 9,countPtr = 内存地址。


3、使用指针传递参数,那就同时提一下三种传递参数导函数的方法

(1)按值传递:最普通的方法,不在全局改变传入参数的值。

栗子及使用方法:

void transmit(int);

int main()

{

int y = 5;

transmit(y);

cout << y << endl;

return 0;

}

void transmit(int a){

a++;

}

输出为5,没有改变。

(2)引用参数的引用传递:传入参数的复制,变量在全局改变。

栗子及使用方法:

void transmit1(int &);

int main()

{

int y = 5;

transmit1(y);

cout << y << endl;

return 0;

}

void transmit1(int &a){

a++;

}

输出为6,改变了。

(3)指针参数的引用传递:传入参数的指针(地址),在全局改变。

栗子及使用方法:

void transmit2(int *);

int main()

{

int y = 5;

transmit2(&y);

cout << y << endl;

return 0;

}

void transmit2(int *a){

(*a)++;

}

输出结果为6,改变了。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值