c語言中指標中 和 。的區別

2021-06-01 05:07:37 字數 348 閱讀 1237

比如有如下結構

typedef strut node listnode;

listnode * p=(listnode *) malloc(sizeof(listnode));

上面語句中涉及到 指標變數和結點變數兩個概念

變數p 是listnode *  型別的指標變數 p的值指向某乙個結點的位址

p所指向的(listnode *) malloc(sizeof(listnode));就是結點變數

p是指標  如果是 *p就表示 結點變數

結點變數實際就是變數本身要訪問成員 比如data 可以直接(*p).data

如果用指標訪問結構內成語 必須用p->data

C語言中指標和陣列的區別

看 c專家程式設計 一書,看到陣列與指標並不相同一章,遂做了一段測試 include include int main void 輸出 可以看到這樣的輸出,結果很顯然 第乙個輸出的值,0028ff24,應該是符號表中p的位址。第二個值,00403000,是位址0028ff24中儲存的值,也就是指標p...

c語言中「 」和「 」區別

乙個豎槓 表示運算的或 二個豎槓 表示邏輯的或 c語言的位運算 取反,0取反是1,1取反是0 是左移,比如1 右移,類似左移,數值大小除以2的n次方 按位與,1與任意數等於任意數本身,0與任意數等於0,即1 x x,0 x 0 按位或,x y中只要有乙個1則結果為1 按位異或,x y相等則為0,不等...

C語言中指標大全

1.使用二維字串儲存字串的時候會出現儲存浪費的情況,使用指標陣列儲存則不會 char s for i 0 ifor i 0 i 3 i 2.指標陣列作為函式引數傳遞多個字串給另乙個函式。指標陣列是乙個陣列,只是裡面存放了指標 void str sort char s,int n n代表指標陣列的長度...