在這裡插入**片
## 善於利用指標
#includeint main()
; //int d[3][4] = ,, };
int d[3][4] = ;
pointer_1 = &a;
pointer_2 = &b;
printf("a=%d,b=%d\n", a, b);
printf("*pointer_1 =%d,*pointer_2 =%d\n", *pointer_1, *pointer_2);
printf(" &c=%p,&c[0]=%p\n", &c, &c[0]);
printf(" &d[0][0]=%p,&d[0]=%p,&d=%p\n", &d[0][0], &d[0],&d);
printf(" &d[0][0]+1=%p,&d[0]+1=%p,&d+1=%p\n", &d[0][0]+1, &d[0]+1, &d+1);// &d[0][0]+1 相當於加了加0x04,&d+1相當於加0x40(乙個數是4個位元組)
printf(" d[0][0]+1=%d,d[0]+1=%p,d+1=%p\n", d[0][0] + 1, d[0] + 1, d + 1);// d[0]+1 相當於加了加0x04,&d+1相當於加0x10(乙個數是4個位元組)
為了驗證上文所說的資訊
對於一維而言:a[i]=(a+i);
對於二維而言:a[i] [j] = ((a+i)+j)
關鍵點:
int * a;
int * a[3];
int (*a)[3] ;
char a=「123223」;
char a=「123223」;
指標變數指向的是乙個數,乙個字元,還是乙個行,乙個字串,還是乙個二維陣列;
int( *p)(int,int) -> int max(int,int);指向函式的指標。
指標可以指向:乙個數,乙個陣列,乙個二位陣列,乙個字元,乙個字串,乙個函式。即乙個指標變數可以指向乙個變數!
C語言 第八章
這一章沒有怎麼仔細看,其實也很簡單,記住格式就行了。等不會的時候可以翻書看一下就ok了。到此為止,譚浩強的這本書已經看完一遍了,找到了10個左右的錯誤,感覺有點驚訝。後天c語言的聖經就買回來了,到時候再認真看看那本吧 評價極高啊 聖經orz 一 c語言的標準 i o庫中定義了3個 file 型指標 ...
第八章 指標 第八章 指標
1 什麼是位址 include using namespace std int main 11 在堆中建立對像 我們既然可以在堆中儲存變數,那麼也就可以儲存對像,我們可以將對像儲存堆中,然後通過指標來訪問它 include using namespace std class human 14 在建構...
c語言第八章函式
第八章函式 一 函式定義的一般形式 1.無參函式 型別識別符號 函式名 2.有參函式 型別識別符號 函式名 形式引數表列 二 函式引數和函式返回值 1.形參 在定義函式時函式名後面括號中的變數名 實參 主函式在呼叫乙個函式時,函式名後面括號中的引數 2.引數傳遞方式 值傳遞 單 指標傳遞 3.形參和...