c語言 關於陣列與指標的一些基本運算

2021-07-30 21:46:11 字數 2160 閱讀 1282

一.sizeof()的有關運算

1.知識:

2.相關計算

includeint main()

; printf("%d\n",sizeof(a)); //整個陣列的大小 16

printf("%d\n",sizeof(a+0)); //首元素的位址加0,還是首元素的位址 4

printf("%d\n",sizeof(*a)); //陣列a首元素的大小 4

printf("%d\n",sizeof(a+1)); //陣列a首元素的位址加1,表示陣列第二個元素的位址的大小,位址為4個位元組 4

printf("%d\n",sizeof(a[1])); //陣列a第二個元素的大小 4

printf("%d\n",sizeof(&a)); //陣列a首元素位址的大小 4

printf("%d\n",sizeof(&a[0])); //陣列a首元素位址的大小 4

printf("%d\n",sizeof(&a[0]+1)); //陣列a第二個元素的位址的大小 4

return 0;

}//字元陣列

#includeint main()

; //arr表示乙個字元陣列,裡面有6個元素,不包括\0,乙個char型別大小為1個位元組

printf("%d\n", sizeof(arr)); //整個陣列的大小 結果為6

printf("%d\n", sizeof(arr+0)); //陣列首元素的位址 4

printf("%d\n", sizeof(*arr)); //陣列首元素的大小 1

printf("%d\n", sizeof(arr[1])); //陣列第二個元素'b' 的大小 1

printf("%d\n", sizeof(&arr)); //陣列首元素的位址 4

printf("%d\n", sizeof(&arr+1)); //跳過整個陣列,後面內容的位址的大小 4

printf("%d\n", sizeof(&arr[0]+1)); //陣列第二個元素的位址的大小 4

return 0;

}

二.strlen()的有關運算

1.strlen()用來計算指定字串的長度,不包括結束字元「\0」;它會從首位址一直找下去,直到遇到"\0"停止。

#include#includeint main()

; printf("%d\n", strlen(arr));

//從陣列的首元素位址一直找下去,直到"\0"停止,該陣列不包括"\0",所以它會一直找下去,計算結果為一隨機數

printf("%d\n", strlen(arr+0));

//從陣列的首元素位址一直找下去,計算結果為一隨機數

printf("%d\n", strlen(*arr));

//*arr表示首元素,即'a',也就是從位址值為97開始找,但97是乙個未知位址,不允許訪問,所以這題是錯誤的

printf("%d\n", strlen(arr[1]));

//arr[1],即'b',所以這題也是錯誤的

printf("%d\n", strlen(&arr));

//從陣列的首位址一直找下去,計算結果為一隨機數

printf("%d\n", strlen(&arr+1));

//從跳過這個陣列的位址開始找下去,計算結果為一隨機數,比上式大6

printf("%d\n", strlen(&arr[0]+1));

//從陣列的第二個元素的位址一直找下去,計算結果為一隨機數,比上式小5

return 0;}2.

#include#includeint main()

C語言指標與陣列的一些基本知識

我還是乙個初學者,今天看了一天的書,總結了如下知識點。指標與陣列 int p p a p 1 指標 指標就是乙個位址,指標變數是存放位址的變數,指標變數的值就是指標p指向那個元素的位址。p a 把a的位址賦給指標變數p 指標變數p的值就是a的位址,p指向a printf d p 輸出指標變數p所指向...

JS中的陣列(關於陣列的一些基本操作與一些騷操作)

本次筆記記錄一下個人關於陣列沒掌握好的一些知識點 arra.of用來建立單個陣列 當我們想建立陣列中只有乙個元素,且元素值為1的時候 let arr1 new array 1 console.log arr1 很顯然,列印出的卻是長度為1的空陣列 正確方法來了 let arr2 array.of 1...

關於陣列和指標的一些基本問題

2.另外文中有些細節可能引用您的內容卻未給出參考,請原諒我的疏忽,你的共享我不會忘記.3.email lizhiguo0532 163.com 李枝果 lizgo 1.乙個變數,同時具有兩個屬性 左值和右值,左值表示該變數所分配空間的位址,右值表示該變數空間中所儲存的值。2.乙個變數的型別就是其中所...