C语言中的指针与数组

大多数情况下,指针和数组在c中被视为相同。一些区别是:

&运算符:

  • &pointer =返回指针的地址。

  • &array =返回第一个元素的地址。

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.