“指針與數組是一樣的”對嗎?
我認為此種說法欠妥!
首先,指針是變量而數組是常量,并且數組不是一種常指針。
因為:指針本身占有存儲空間,而數組名a與其地址&a是同一個值。
……
“指針與數組是一樣的”對嗎?
我認為此種說法欠妥!
首先,指針是變量而數組是常量,并且數組不是一種常指針。
因為:指針本身占有存儲空間,而數組名a與其地址&a是同一個值。
……
clearcase/" target="_blank" >cc" size="3">/*
**************************************************************************
*file name : pointerVSarray.c
*description: 數組就是指針這句話對嗎?
*note : 我認為這句話不對。下面的程序在VC++6.0中運行結果顯示:
a : 12FF74
&a : 12FF74
&a[0] : 12FF74
p : 12FF74
&p : 12FF70
由此可見:a和&a代表一個地址,數組名在內存中不占存儲空間
而指針在內存中占據空間以一個變量的形式存儲它所指向的變量
的地址
*author : kernelxu
*version : 1.0
*date : 2005/04/04
**************************************************************************
*/
#include <stdio.h>
#include <stdlib.h>
/*
--------------------------------------------------------------------------
- function : main()
--------------------------------------------------------------------------
*/
main()
{
int a[3] = ;
int *p;
p=a;
printf("a: %X\n",a);
printf("&a: %X\n",&a);
printf("&a[0]: %X\n",&a[0]);
printf("p: %X\n",p);
printf("&p: %X\n",&p);
system("pause");
}/*main()*/