C++指针变量的定义
C++规定所有变量在使用前必须先定义,即指定其类型,在编译时按变量类型分配存储空间,对指针 变量必须将它定义为指针类型。
//定义整型变量
int i,j;
//定义指针变量
int *point_num;
上述定义的指针变量point_num是指向整型数据的指针变量,也就是说,指针变量pointer_num只能用来指向整型数据,而 不能指向浮点型变量或字符型变量。
int就是指针变量的基类型,指针变量的基类型用来指定该指针变量可以指向的变量的类型。
定义指针变量的一般形式为
基类型 *指针变量名;
如下:
int *point_num1;
float * point_num2;
char * point_num3;
指针变量名是pointer_num1、pointer_num2和pointer_num3,而不是*point_num1、* point_num2和* point_num3。
即*不是指针变量名的一部分,在定义变量时在变量名前加一个*表示该变量是指针变量。
在C++中怎样使一个指针变量指向另一个变量呢?
只需要把被指向的变量的地址赋给指针变量即可:
point_num1=&i;
在C++中,一般编译系统为每一个指针变量分配4个字节的存储单元,用来存放变量的地址, 在定义指针变量时要注意:
- 不能用一个整数给一个指针变量赋初值。
- 在定义指针变量时必须指定基类型。
经典案例:C++定义指针变量。
#include<iostream>//预处理
#include<string> //引入string
using namespace std;//命名空间
int main()//主函数
{
int *point_num1;//定义指针变量
int temp;//定义整型变量
temp=3;赋初值 point_num1=&temp;//将指向的变量temp的地址赋给指针变量
cout<<*point_num1<<endl;//输出
return 0; //函数返回值为0;
}
执行本程序之后,会输出:
3
--------------------------------
Process exited after 0.08166 seconds with return value 0
请按任意键继续. . .
文章来源: zhuanlan.zhihu.com,作者:,版权归原作者所有,如需转载,请联系作者。
原文链接:zhuanlan.zhihu.com/p/337039137