对于指向一块堆内存的指针变量,还可以使用数组记号来存储相同类型的几个数据项.
针对于上述,如*(point+i)与point[i]的效果是完全相同的;前者为指针记号,后者为数组记号,两者等价;
示例:
#include <stdio.h>
#include <stdlib.h>
int main()
{
int *point = (int*)malloc(sizeof(int) * 20);
for (int i = 0; i <= 20; i++)
{
*(point + i) = i;//指针记号法
printf("p(%02d)=%02d Address=0x%08x\t\t", i, *(point + i), point + i);
point[i] = i;//数组记号法
printf("p(%02d)=%02d Address=0x%08x\n", i, point[i], point + i);
}
return 0;
}