66问答网
所有问题
C语言数组指针的元素个数怎么定义,为什么是4?
如题所述
举报该问题
推荐答案 2020-10-15
int (*p)[4]是将p定义成了
数组指针
(即指向一维数组的指针)。
既然要指向一维数组,就得知道可以指向的一维数组的大小,[]中就是指定可以指向的一维数组的大小的。
而这里4说明只能用p指向具有4个int元素的一维数组。
当然用p指向列大小为4的
二维数组
的某一行也是可以的,就像图中一样。
下面给个例子:
int a[4]={1,2,3,4};
int b[2][4]={5,6,7,8,9,10,11,12};
int (*p)[4];
//下面都可以
p=&a;
p=b;
p=b+1;
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://66.wendadaohang.com/zd/n929UsspDnniUUnsvix.html
相似回答
C语言的指针的
问题。 int (* P)[4];和int * p[4]有
什么
区别。
答:
一个数组,若其元素均为指针类型数据,称为指针数组。也就是说,指针数组中每一个元素都相当于一个指针变量
。一维指针数组的定义形式为:类型名 *数组名[数组长度]例如:int *p[4]由于[]比*优先级更高,因此p先与[4]结合,形成p[4]的形式,这显然是数组形式。然后再与p前面的*结合,*表示次数...
c语言
急急急!想要p为
4个元素的数组的指针,
不知道应该
怎么
写?帮...
答:
int (*p)[4]; p为含有
4个元素的指针数组,
每个元素均为指针 也就是*p 、*p+1、*p+2、*p+3 均为地址
C语言的数组
和
指针
问题,谢谢高手的解答!
答:
首先,它是一个一维的
数组,
有
四个元素,
在内存中申请了一块连续的空间(
数组的
空间都是连续的),0是这组数的首地址。想象一把尺上面,0-
4c
m是这四个元素所在的空间,所以首地址为0(cm的位置),“也是第一个元素的地址”。.如果我们 int * p=B; 会有什么情况? p与B的值一样,都是0...
C语言数组
作为形参实参的一些疑惑?
答:
实际上以上定义等价于下面
的定义
。1.数组里面带
元素个数
:void fun(int arr[常数], int n);这里的常数可以是任意正整数,实际上编译器是会忽略,因为这里只要告诉编译器我接收的是一个
数组指针,
至于它有多少个元素不关心,因为实参也只是传个地址过来。元素个数由参数二控制。至于
为什么
要这么约定可以...
C语言
中
数组指针
关于p=a,p=&a等问题!!
答:
指针移动字节数为列数乘以int型数据所占字节
数,
即
4
(代表数组有4列)乘以sizeof(int)。问题2:先说一下&a代表的意思。假设数组为int a[4]对于一维数组&a代表的是int型
数组指针,
它与a的区别是a是int型指针,但是&a代表是int型数组指针,&a的步长为以为数组大小乘以int型数据所占字节数,所以当p...
编
C语言
时二维
数组指针
形式要写成int(*p)【
4
】
,为什么
不能写成int*...
答:
首先要说的一点是运算符的优先级,[]运算符的优先级比*运算符的优先级要高。因此要想把int p[2][4]转变成
指针,
就需要用()提升*的优先级:int (*p)[4]。这表示p是一个指针,指向
的元素是
一个包含4个整形
元素的数组
。因此是一个n*4的二维数组。int *p[4]表示的是p是一个
数组,数组
中...
大家正在搜
c语言指针怎么指向数组
c语言定义指针数组
c语言中指针和数组的应用
c语言数组指针的用法
c语言中指针指向数组
c语言中指针与数组的区别
指针与数组c语言
c语言用指针数组排序
c语言用指针输出数组
相关问题
C语言,*p之前不是已经定义了是一个指向包含4个元素的数组指...
C语言中,定义一个int a[3][4],如果定义一个指针指...
C语言中int ar[3][4]这是一个数组还是指针,为什么...
c语言的指针数组是怎么一回事?
C语言 为什么指向一维数组的指针是简单变量指针而不是数组指针...
C语言指针数组指针怎样理解?
C语言中:数组指针与指针数组有什么区别?
编C语言时二维数组指针形式要写成int(*p)【4】,为什么...