G'day!
所以如果我这样声明数组:
int *A[5];
并做到了:
A[0]=(int*)malloc(sizeof(int)*10);
我可以使用方括号符号通过A[0][5]访问/填充吗?
是的,您可以访问A[0][n]
,只要[n
]不超过分配的内存区域。
记住,在c中,索引将比分配的内存位置的数量少1,这可能会有所帮助。
在大多数情况下,数组和指针是可互换的(当数组衰减为指针时),这包括访问它们的语法。因此,可以使用数组索引语法来访问指针。
事实上,做a[x]
相当于做*(a + x)
。