C 有關指標的資料型別小結

2021-08-20 05:42:10 字數 1453 閱讀 7711

定義

含義int i;

定義整型變數i

int *p;

p為指向整型資料的指標變數

int a[n];

定義整型陣列a,它有n個元素

int *p[n];

定義指標陣列p,它由n個指向整型資料的指標元素組成

int (*p)[n];

p為指向含n個元素的一維陣列的指標變數

int f();

f為帶回整型函式值的函式

int *p();

p為帶回乙個指標的函式,該指標指向整型資料

int (*p)();

p為指向函式的指標,該函式返回乙個整型值 ,

int **p;

p是乙個指標變數,它指向乙個指向整型資料的指標變數

int (*p)()可以用指標變數指向整型變數、字串、陣列,也可以指向乙個函式。乙個函式在編譯時被分配給乙個入口位址。這個函式的入口位址就稱為函式的指標 int max(int, int); int (*p)(); //宣告指向函式的指標 p = max;

int *p()乙個函式可以帶回乙個整型值、字元值、實型值等,也可以帶回指標型的資料,即位址。其概念與以前類似,只是帶回的值的型別是指標型別而已。

double *search(double(*pointer)[4], int n);

例如:p++、p--、p+i、p-i、p+=i、p-=i等。
p=&a; (將變數a的位址賦給p)

p=array; (將陣列array首元素位址賦給p)

p=&array[i];(將陣列array第i個元素 的位址賦給p)

p=max;(max為已定義的函式,將ma x的入口位址賦給p)

p1=p2;(p1和p2都是指標變數,將 p2的值賦給p1)

如果兩個指標變數都指向同乙個陣列中的元素,則兩個指標變數值之差是兩個指標之間的元素個數

若兩個指標指向同乙個陣列的元素,則可以進行比較。指向前面的元素的指標變數「小於」指向後面元素的指標變數。

void真正發揮的作用在於:

(1) 對函式返回的限定;

(2) 對函式引數的限定。

例如:void abc( void ); 談談void型別用於指標!

ansic新標準增加了一種「void」指標型別,即不指定它是指向哪一種型別資料的指標變數。

例如:void *p;

表示指標變數p不指向乙個確定的型別資料,它的作用僅僅是用來存放乙個位址

void指標它可以指向任何型別資料。也就是說,可以用任何型別的指標直接給void指標賦值。但是,如果需要將void指標的值賦給其他型別的指標,則需要進行強制型別轉換。

指標的資料型別和指標運算小結

有關指標的資料型別 定義含義 int i 定義整形變數 int p 定義只想整型資料的指標變數p int a n 定義整形陣列a,它有n個元素 int p n 定義指標陣列p,它由n個指向整形資料型別的指標元素組成 int p n 定義指向n個元素的一位陣列的指標變數 int f f為帶回整形函式值...

有關指標的資料型別的部分總結

定義 含義int i 定義整形變數i int p p為指向整形資料的指標變數 int a n 定義整形陣列a,它由n個整形資料元素組成 int p n 定義指標陣列p,它由n個指向指向資料的指標元素組成 int p n p為指向含有n個元素的一維陣列的指標變數 int f 定義函式返回值型別為int...

C 資料型別轉換小結

剛接觸vc程式設計的朋友往往對許多資料型別的轉換感到迷惑不解,本文將介紹一些常用資料型別的使用。我們先定義一些常見型別變數藉以說明 int i 100 long l 2001 float f 300.2 double d 12345.119 char username 女俠程佩君 char temp...