C/C++的传指针和引用
来源:互联网 发布:网络综艺为什么这么火 编辑:程序博客网 时间:2024/06/08 05:09
人老了就是会糊涂,记录一下C/C++中传指针和引用 的区别,免得再去找来找去
- 传指针
#include<stdio.h>void swap(int*a,int*b){ int temp=*a; *a=*b; *b=temp;}int main(){ int a=1,b=2; swap(&a,&b); printf("a=%d,b=%d",a,b); return 0;}
解析:上述的swap函数是将a和b的地址的副本传进去了,然后再在swap函数中,对a和b的值进行了交换,所以影响了外面main函数中的a和b。如果单纯的传入a和b值的副本,那么其影响范围只限于swap函数内,断不可影响到main函数中去。
- 引用
#include<cstdio>using namespace std;void swap(int&a,int&b){ int temp=a; a=b; b=temp;}int main(){ int A=1,B=2; swap(A,B); printf("a=%d,b=%d",A,B); return 0;}
解析:上述是典型的C++的引用的用法,在swap函数中,swap(int &a,int &b),添加&是给实参添加一个别名,即它们指的是同一个值,在main函数中使用的swap(A,B)中的A和B,对于a和b来说分别是A 和B的别名,所以对a和b操作就是对A和B操作,故而能够进行交换。
小结
传指针是C的典型用法,引用是C++的用法,个人而言,指针还是用着更加好理解一点点,传指针就是将地址副本传进去,然后在函数里面对地址代表的值进行操作,倘若仅仅只是对地址操作而不对地址所代表的值操作,那么也是无法影响到外面的值的,这一点需要引起足够的重视。
阅读全文
0 0
- C/C++的传指针和引用
- c的指针*和引用&
- [C++] 引用和指向指针的引用
- 【C/C++】引用和指针的区别
- c++:引用和指针
- 详解c++[指针的指针] 和 [指针的引用]
- [C++]指针和引用的比较小结
- c++和c的指针及引用
- 指针和引用的区别(C++)
- C程序设计语言--指针和引用的区别
- 【C++】指针和引用的差别
- c的指针和php中的引用
- 引用和指针的区别C/C++
- C语言的指针*和引用&
- [C++]指针和引用的区别
- C++:指针和引用的区别
- c指针和c++引用
- c/c++ 引用和指针
- eval解析JSON中的注意点 在JS中将JSON的字符串解析成JSON数据格式,一般有两种方式: 1.一种为使用eval()函数。 2. 使用Function对象来进行返回解析。 使用eval
- 计算机修炼之路--------JavaScript法术的学习笔记(三)之JavaScript语法(二)
- hdu6138 多校2017 ac自动机or后缀数组
- Debug Knowledge Base
- poj--1961--Period
- C/C++的传指针和引用
- HDU-4847:Wow! Such Doge!(震惊!!!kmp模板题。。。kmp:我不要面子的啊)
- Jmeter中Websocket协议支持包的使用
- codeforces734D
- tensorflow基础
- 只用路径上传文件,不用手动选择文件上传
- Dipping into Shared Memory
- Super Jumping! Jumping! Jumping! hdu1087
- 最长回文