C++指针和引用的函数调用格式

#include< iostream>
using namespace std;
#pragma warning(disable:4996)
#include < string>
void changeValue(int *p)
{
*p = 10;
}
void changeValue2(int &r)//r为传进来参数的别名
{
r = 10;
}
int main(void)
{
cout << “HelloWorld!!!”<< endl;
int ival = 42;
int *p = &ival;//p是指向ival的地址, *p表示该地址的内容(值) //等同于int *p; p = &ival;
int **q = &p;//q是指向ival指针的指针,即q是p的指针,指向p的地址
cout << *p << " " << p << endl;
cout << **q << " " << q << endl;//p的地址
*p = 1;//p指向的地址(&ival)的内容(ival)赋值为1
cout << ival << " " << &ival << endl;
int a = 11;
p = &a;
cout << *p << " " << p <<endl;
cout << “-------------------” << endl;
cout << "a = " << a << endl;
changeValue(&a);
cout << "a = " << a << endl;
a = 20;
cout << “-------------------” << endl;
cout << "a = " << a << endl;
changeValue2(a);//可看做引用的优点
cout << "a = " << a << endl;//int 指针
int iival = 0;
int *i = &iival;
*i = 11;
cout << “i:” << i << " " << *i << endl;
//char 指针
char str0[10] = “str00”, *str1 = “str11”;
cout << &str1 << endl;
cout << “0:” << *str0 << " " << *str1 << endl;
cout << “0:” << str0 << " " << str1 << endl;
strcpy(str0, str1);
cout << “1:” << str0 << " " << str1 << endl;
cout << “2:” << strcpy(str0, str1) << endl;
return 0;
}

运行结果:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/zy47675676/article/details/82840940
今日推荐