C語言指針實例詳解double *(*a)[3][6]
題
double * (*a)[3][6];
求取sizeof(a),sizeof(*a),sizeof(**a),sizeof(***a),sizeof(***a);
a是一個指針,它指向誰呢,當然指向*a啦,那*a又是啥呢,代表3行6列數組的首地址,所以a是一個指向一個三行六列double指針的數組的指針的指針,*a是3行6列數組的首地址,
那緊接着就簡單了,
**a就是直線一維具有6個double*元素數組的首地址
***a是double*的指針
****a是double類型
故sizeof(a)=4
sizeof(*a) = 3*6*4 = 72
sizeof(**a) = 4*6 = 24
sizeof(***a) = 4
sizeof(****a)=8
具體分析還可以可以使用替代法
T1 = (double*);
B=(*a);
T1 B[3][6]; 這樣就一目瞭然了
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章
codeforces 1251E1/E2 Voting
祤溪
2020-07-08 12:36:32
獲取某一目錄下所有文件夾名,返回vector「string」
COSummer
2020-07-08 12:27:32
linux環境下開源庫jsoncpp使用教程
Worthy_Wang
2020-07-08 12:19:12
C++:模擬實現list容器(支持迭代器)
ETalien_
2020-07-08 12:19:01
C++(面試題):給40億個不重複的無符號整數,沒排過序,如何快速判斷一個數是否在這40億個數中
ETalien_
2020-07-08 12:19:01
C++ 併發中的無鎖編程
蚓无爪牙之利
2020-07-08 11:23:03
數據結構——數組(3) 在有序數組中找出重複的次數最多的數
zhangying_496
2020-07-08 10:38:18
數據結構——數組(1)數組求和&打印二維數組&判斷數組是否遞增
數組求和 方法一:直接一次for循環 int GetSum1(int *a,int n) { int sum=0; for (int i=0; i<n;i++) { sum+=a[i];
zhangying_496
2020-07-08 10:38:18
C語言實現的json解析程序
lindorx
2020-07-08 10:35:53
大話設計模式C++版本-04-代理模式
wkd_007
2020-07-08 10:27:39
大話設計模式C++版本-07-模板方法模式
wkd_007
2020-07-08 10:27:28
大話設計模式C++版本-05-工廠方法模式
wkd_007
2020-07-08 10:27:26