[英]What does sizeof(int**) mean?
我是C語言的新手。我在程序中看到以下行:
grid = calloc(nx,sizeof(int**));
我讀到int**
是指向指針的指針,但是sizeof(int**)
是什么意思?
sizeof
運算符產生其操作數所需的存儲字節數。 操作數可以是表達式或括號中的類型。 在這種情況下,操作數是類型int **
,它是“指向int
指針”。
假設grid
已聲明為
int ***grid;
然后可以重寫為
grid = calloc(nx, sizeof *grid);
sizeof
表達式只是表示一個指向int
的指針所需的字節數。 據推測,無論誰編寫代碼,都希望分配足夠的內存來存儲nx
此類指針。
sizeof(int **)
告訴您int **
字節數,類似於sizeof(int *)
告訴您int *
字節數。 它們只是具有不同級別的間接。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.