77问答网
所有问题
当前搜索:
具有相同类型的指针变量p与数组a
若有定义:Int a[10],*p=a,则*(p+5)表示()
答:
B (
p
+5)表示p+5这个地址指向单元内容,当然是int的,所以不是地址 p=a;的赋值后,p存放的地址就是
数组
起始地址也就是数组元素a[0]的地址,*p可以写成*(p+0),p[0],相当于a[0](p+5)相当于p[5],a[5],即
变量a
[5]的内容 所以应当选择B ...
C语言:简述一下“
数组和指针
的关系”?
答:
一、概念
数组
:数组是用于储存多个
相同类型
数据的集合。指针:指针相当于一个变量,但是它和不同变量不一样,它存放的是其它变量在内存中的地址。二、赋值、存储方式、求sizeof、初始化等 1.赋值 同类型
指针变量
可以相互赋值,数组不行,只能一个一个元素的赋值或拷贝 2.存储方式 数组:数组在内存中...
如果
p
是个
指针变量
,为什么P[i]回完全等价与*(p+i) *(p+i)是什么...
答:
p
作为一个
指针变量
,p[i]表示p指向的一段连续内存中的第i个偏移位置,等同于数组下标调用。(p+i)就是去p指向的位置偏移i个偏移量,然后*解引用取得那个点的值。例如:int a[10] = {1,2,3,4,5,6,7,8,9,10};int *p = a;int i = 5;此时p指向
a数组
的首地址,即a[0]的位置,设...
C语言中*p[ ]是什么意思
答:
(*p)[]则不同,首先它是一个指针,然后,它指向一个数组,但通常,再定义的时候需要指定所指向数组的大小。示例:include <STDIO.H> int main(int argc, char *argv){ char a[10]="test";char *(
p
[])={"hello","world!"};//char
指针数组
,两个元素,分别指向hello和world printf("%s\...
C语言:若
P
已指向
数组
元素a[7], 通过P给
指针变量
S赋值,那么要让S指向数 ...
答:
您好,很高兴回答您的问题。除了上面朋友给的方法之外,还可以重新给s赋值的形式来达到目的。s=&a[5]也是可以实现要求的。
对于
类型相同的
两个
指针变量
之间不能进行运算的是
答:
1、“<(小于)”运算在两个同
类型的指针
间可以比较大小,比较原则应该是按照实际内存的高低位比较的 2、“=(等于)”是对于
类型相同
的两个指针变量之间常规运算。3、“-(减法)”运算两个
相同指针变量
相减可以获得在之间相隔的同类型元素个数(在某个类型的
数组
中的应用)。4、“+”运算是不可以...
指针就是地址吗,
指针变量
难道不是地址?
答:
指针就是地址,地址就是指针;指针变量是一个变量,它保存了基本
类型变量的
地址。如果
指针变量p
保存了
变量a
的地址,那么称作p指向了a,*p 就是变量a。如果p是一个指针变量,*p 表示了以 p 的内容为地址的变量,就是p指向的变量。可以这样来理解指针:指针是一种特殊的语言机制,它存放的是其它变量的...
程序段如下:int a[10];int *p;p=a;则程序中
的指针变量p
的指向地址...
答:
晕,这样简单的问题还真难解释呀...你可以这样认为:
p
=a; 其实就是 p=&a[0]; 也就是
数组
中第一个元素的内存地址!如果,a[0]的内存地址是A100的话,那么p所指向的地址也肯定是A100;
*p=&a,*p=a
和p
=&a各是什么意思,有什么区别?
答:
1.一般来说*p=&a的表示方法是错的,*p=a
和p
=&a是正确的。2.*p=a的意思:将a的值赋给
p指针
指向的地址的值;3.p=&a的意思是:将a的地址赋给
指针p
;4.区别:*p是一个值;p是一个地址;两者完全不
相同
。5.*代表着p指向的地址的值,简单来说就是取值;&是取地址符号,取的是地址;p是...
...a,*p=&a; 则a与下列表达式 B 等价。请问ACD哪错了? A) p B) *&...
答:
1、在*p=&a中,&a表示a这个变量的存放地址,然后把这个地址放到p这个变量中,所以p是一个
指针变量
(用*p表示),所以,打印出来
的p
仅仅是存放a的一个地址,而不是
a变量
本身。所以,A)是错误的。2、*&a先是指向a的地址,再用指针指向这个地址,当然还是
变量a
本身。其实,任何变量的“*&(变量名...
棣栭〉
<涓婁竴椤
2
3
4
5
6
7
8
9
10
11
涓嬩竴椤
灏鹃〉
其他人还搜