[英]is the line *x=y equal to the line x[0]=y in c
在 c 中,當使用 malloc 分配新的動態 memory 時:
int* x = (int*)malloc(sizeof(x));
int y = 10;
這條線是:
*x = y;
等於這一行:
x[0] = y;
[]
運算符的定義是:給定ex1[ex2]
,保證等價於
*((ex1) + (ex2))
其中ex1
和ex2
是表達式。
在您的情況下x[0]
== *(x + 0)
== *(x)
== *x
。
請參閱指針是否支持“數組樣式索引”? 詳情。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.