7.6 C++变量与指针 | 用string复制

C++什么是指针

在C++代码中一般是通过变量名来对内存单元进行存取操作的,程序经过编译以后已经将变量名转换为变量的地址,对变量值的存取都是通过地址进行的。

按变量地址存取变量值的方式称为直接存取方式,或直接访问方式。

在C++中,还可以采用另一种称为间接存取的方式,可以在程序中定义这样一种特殊的变量,专门用来存放地址,由于通过地址能找到所需的变量单元,因此可以说,地址指向该变量单元。

因此将地址形象化地称为指针,一个变量的地址称为该变量的指针;如果有一个变量是专门用来存放另一变量地址的,则它称为指针变量;指针变量的值是地址。

C++指针变量

指针变量是一种特殊的变量,用它来指向另一个变量。为了表示指针变量和它所指向的变量之间的联系,在C++中用:

*

表示指向。

经典案例:C++实现用string复制。

#include<iostream>//预处理
#include<string> //引入string 
using namespace std;//命名空间 
int main()//主函数 
{
  string str1;//定义字符串变量str1 
  str1="我是字符串";//赋值 
  string str2;//定义字符串变量str2 
  str2=str1;
  cout<<str1<<"str1"<<endl;//输出 
  cout<<str1<<"str2"<<endl;
  return 0; //函数返回值为0;
}

执行本程序之后,会输出:

我是字符串str1
我是字符串str2

--------------------------------
Process exited after 0.08327 seconds with return value 0
请按任意键继续. . .
7.6 C++变量与指针mp.weixin.qq.com图标

文章来源: zhuanlan.zhihu.com,作者:C语言入门到精通,版权归原作者所有,如需转载,请联系作者。

原文链接:zhuanlan.zhihu.com/p/337038800

(完)