指針變量所存儲的值等于另一個變量在計算機存儲器中的訪問地址
0.野指針
一個指針只聲明,沒有指向任何地址 。例如
void main(){ char *p;}1.指向基本變量的指針 ,例如
int a = 0; int * b = &a; //b中存放變量a在計算機內存中的地址2.指向函數的指針,例如
int add(int a, int b) { return a + b; } int(*p)(int, int) = add;3.數組 數組名就是一個指針變量,指向數組的第一個元素
int a[10] = { 0 }; *a取出的值為數組a[10]的第一個元素 3.1 數組指針
顧名思義,就是指向數組的指針
int a[10] = { 0 }; int (*p)[10] = &a; //p 為數組指針二維數組a[10][10]的數組名也是一個數組指針
3.2 指針數組數組的元素是指針,例如整型數組,即數組元素類型是整型的數組
int *a[10] = { 0 };4 const 與指針結合4.1 常量指針
即常量的指針,表示指針是一個常量
int a = 10; int *const b = &a;b為常量指針。有2個特點:1.定義時必須初始化 2.b一經賦值便不能改變4.2指針常量
即指向常量的指針, 形式為 const char * p ;多用于修飾函數的形參,防止原本的實參被修改
void PRint(const char * str){ printf("%s", str);}void main(){ char str[10] = "123"; print(str); system("pause");}
新聞熱點
疑難解答