66问答网
所有问题
当前搜索:
数组地址和数组首地址
c语言
数组
、
地址
问题请高手解释?
答:
定义了
数组
a,则机器在内存当中给数组a开辟一片内存存储数组a,数组a的元素是顺序存储的,所以说数组a所在的
地址
就是数组a第一个元素所在的地址,这两个指针(&a,&a[0])其实算是指向同一个地址的,所以打印出来的数值是相同的。p应该是64位32进制形式输出,%d是十进制形式输出的。&a[0]跟a其实...
指针
数组
*a[]和指向指针的指针**a有什么关系?
答:
其次,凡是与指针相关的一定要注意容器的类型与被存储的地址类型要保持一致。s1到s4是四个字符型
数组
,用于存储字符串,不考虑结束符都是100个元素,他们各自有一个
首地址
,该地址类型是char *;a是个char *数组,因此其每个元素的类型都是一个指针(char *),也就是多个char *类型的指针变量组成...
c语言中,如果ar是个
数组
,那么表达式ar[i]与什么等价
答:
ar是一个数组,就是ar是名为ar的数组的首地址。ar[i]就是ar数组的第i个元素,用指针的表达方式表达就是*(a+i)。例如:intar[5],*p;如果想让p指向数组首元素的话,可以写:p=ar;则会将首地址赋值给p;如果是写ar[3]=7;则编译程序会取ar
数组首地址
,加上7*sizeof(int)后形成目的地址...
求 高手 C语言
数组和数组
之间能直接赋值吗
答:
楼主,你好
数组
之间是不可以直接赋值的,要直接赋值的话,也只能是利用循环,一个一个的赋值,不过你所要实现的可以通过其他方法来实现,比如取地址运算,把数组a的
首地址
赋给B数组,不过这要通过指针来实现,还有一种简单点的方法就是拷贝运算,你可以利用c语言库里面已经定义好的函数直接实现你所要...
c语言中,关于指针int(*p)[4]和int*p指向二维
数组
a[3][4]初始化的问题...
答:
二维
数组
相当于多行列数相同的一位数组组合起来;int (*p)[N]定义一个行指针p,其中:p指向一个N列二维数组的
首地址
p自增1,p指向下一“行”一维数组的首地址 因为p是一个二级指针。所以索引其指向的数据内容需要取二次内容,格式及解释如下:格式:*(*(p+行)+列)解释:其实很好理解,因为p...
...形参的是___。 A、
数组首地址
B、数组的第一个元素 C、
答:
若用数组名作为函数调用时的实参,则实际上传递给形参的是___。 A、
数组首地址
B、数组的第一个元素C、数组中全部元素的值D、数组元素的个数 参考答案:A什么是实参,什么是形参? 求举例解释下 橙色的控 | 浏览10213 次 |举报 我有更好的答案邀请更新...
...小弟在
数组
和指针上犯糊涂了。求详详细细解解。。。
答:
1、您必须明白char str[10];是定义了一个含有十个元素的
数组
,而且这十个元素在内存中是以连续的存储单元存放的。其中str是该数组的数组名字,而且str还是该数组的
首地址
,也就是十个元素中的第一个元素的地址,但务必注意str是一个指针常量,它是不能被赋值的也不能进行自增自减的!例如:假设你...
C语言 二维
数组
指针
答:
(a+2)+1和*(*(a+2)+1)这完全是两个东西。第二个代表a[2][1]二维数组名代表的是这个
数组首
元素的
地址
或者可以看作二维数组第一行的地址,a+2是指向第三行的,二维数组可以看作是以行为数组名的一维数组比如 int a[2][2]数组名是a[2]在这里*(a+2)代表的是第三行首元素的地址,...
C++中的
数组
a[]可以直接cout<
答:
字符
数组
是可以用这种方式输出的,因为数组名即代表
首地址
,数组是一块连续的内存空间,所以能直接输出.如果是其他类型的数组则输出的是一个地址.
C语言若有定义int x[10]={0,1,2,3,4,5,6,7,8,9},*p1;则
数组
不为3...
答:
答案是C..我解释是这样,供你参考:B解释,x为
数组首地址
,+3就是向后移动三个地址,指针指向数值3的位置,将地址赋给指针变量P1,因为运算符++比*高一级,所以先执行P1++,但是看清楚,这里的P1的地址值没变,接着执行*运算符,取值就为3... 你的问题在于:P++在此次运算并不会加1,只能在...
棣栭〉
<涓婁竴椤
67
68
69
70
71
72
73
74
75
76
其他人还搜