C++ | 指针 | 理解

一 . 定义
#include <iostream>
using namespace std;
int main()
{
	int i, *i_point;              //i是指向int型的指针变量
	i = 10;
	i_point = &i;
	cout << *i_point<< endl;     //"10",在引用时,加"*"指向值
	cout << i_point << endl;     //"006FFC64"  不加"*"指向地址

	system("pause");
	return 0;
}

二 . 初始化

注意,null和NULL不同


三 . 指针的运算
①指针的取地址符   &
②指针运算符         *
#include <iostream>
using namespace std;
int main()
{
	int i, *i_point;              //i_point是指向int型的指针变量
	i = 3;
	i_point = &i;                 //只有指针变量才能被赋予某个变量的地址
        *i_point = i;                 //指针变量所指向变量的值
	cout << i_point << endl;      //"001AFA5C"
        cout << *i_point << endl;     //"3"
	system("pause");
	return 0;
}


四 . 指向数组的指针


#include <iostream>
using namespace std;
int main()
{
	int a[10], *p;             //i_point是指向int型的指针变量
	p = &a[10];                //数组的首地址用" &a[0] "和" a "都能表示
	                           //p+i表示a[i]的地址
	                           //引用a[i]的值: a[i] | *(p+i) | *(a+i) | p[i]
	system("pause");
	return 0;
}


猜你喜欢

转载自blog.csdn.net/IronBull_Zhang/article/details/80722833
今日推荐