定义一个char *a时可以认为定义了一个a【】;的数组,但是int*b;一般这只认为是定义了一个指向int型的指针,而不认为是定义了一个内容为int型的数组吧
应该一样吧!我个人的看法
a也不是一个数组,而是一个数组的地址而已。
int*b;一般这只认为是定义了一个指向int型的指针,而不认为是定义了一个内容为int型的数组吧
不是,也可以当作数组。
你可以看qsort这个函数,它支持排序,传的参数是void *,任何类型的数组都支持。
int main(){
int a[3] = {1,2,3};
int *p = a;
printf("%d",p[0]);
}
都一样的,明白指针的真实意义,指针就是一个地址,而数组也是一个地址,所以两者是一样的