c语言int *p=a解释
来源:百度知道 编辑:UC知道 时间:2024/05/16 08:13:20
int a[i]
int *p=a
怎么理解第二句?
我的理解是
int *p;
p=a;
的一种简化,对吗?
int *p=a
怎么理解第二句?
我的理解是
int *p;
p=a;
的一种简化,对吗?
int *p=a;是在声明变量时赋初值,这里的*号表示p为指针型变量,与非声明处的*含义不同。类似参考普通变量的声明,如int x=2;即声明时赋初值。
int *p;
p = a;
为对已声明的变量赋值,可类比普通变量:
int x;
x = 2;
你的理解是对的.
我帮你分析一下:int a[i]的i需要已知,要不,是错的.
int *p=a是定义指针变量p,并把数组a[i]的开始地址a赋值给p. 因为a代表数组的开始地址,所以把它理解成int *p
p=a;
是没有问题的.
但是,如果是
int a;
int *p=a则这个表示把a的值当作地址赋值给p,没有实际意义.
莫错,P是一个指针变量,把a的地址送给P
把数组a的首地址赋给p
恩。
c语言int *p=a解释
C语言: ijnt a=1,*p=&a;与int a=1,*p; p=&a; 这两句表达的是一个意思
C语言中 指针int *a=10;和int *a; *a=10;的区别
int *p=&a;和 int *p; *p=a;和 int *p; p=&a;有区别么?
C语言中 设 int a[]={1,2,3,4,5}, *p=a 则数组元素的正确表示是()
C语言:int a=2; a+=a-=a*a 执行后.......
C语言:int a=12; a+=a-=a*a 执行后..得到多少???...
c语言int a[10] 10是什么意思
c语言:void reverse(int a[], int n)是什么意思
C语言中定义int c[4][5],(*p)[5];p=c;其中p、p[0]、*p有什么区别?