一 . 定义
#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; }