C 语言中的指针与数组
C 语言中指针和数组大多数时候被视为相同的。下面列出了一些差异:
& 运算符
& 指针 = 返回指针的地址。
& 数组 = 返回第一个元素的地址。
sizeof 运算符
sizeof(array) = 返回数组中所有元素占用的总内存。
sizeof(pointer) = 仅返回指针变量本身占用的内存。
数组变量不能重新赋值,而指针变量可以。
声明
int a[]; //array Int *p; //pointer
我们考虑一个整型指针变量
int *i;
现在,我们考虑以下分配的结果 -
a = &i; //illegal assignment. a variable can not be updated or modified. p = &i; //legal assignment.
广告