11问答网
所有问题
当前搜索:
已知int a[10],*p=a
.若有说明语句“
int
a[10],*p=a
;”,对数组元素的正确引用是: A、a[p...
答:
p[2]=*(p+2)include <iostream> using namespace std;void test(double a[3][4]){
int
i,j;double k;double* b
=a[
0];for(i=0;i<3;i++){ k=a[i][0];//通过for循环找到最大值 for(j=1;j<4;j++){ if(k<a[i][j]){ k=a[i][j];//k记录最大值 } } //将最...
设
int
a[10],*p=a
; ,则下面()不是对a[3]的正确引用。
答:
设
int a[10],*p=a
; ,则下面()不是对a[3]的正确引用。A.*(a+3)B.p+3 C.p[3]D.*(p+3)正确答案:B
有以下定义:
int
a[10],*p=a
; 则 *(p+5)表示 A. 元素a[5]的地址 B...
答:
选
A
,因为
*p=a
,这时是把数组a的首地址传给了指针p,而数组的定义是从a[0]开始的,所以p+5表示的是元素a[5]的地址,希望你现在明白了
int
a[10], *p=a
; 合理吗? a不是代表数组首个元素的地址吗?而*p不是...
答:
int
a[10], *p=a
;//上面这样是可以的,因为这是在定义指针变量p的同时对其进行初始化操作,这样的做法是//没问题的,但是也只限于在定义指针变量的时候可以这样做,其他情况是不允许的。//在定义指针变量的时候,它前面的*只是起指示说明这个变量是指针变量的作用,而不是起//运算符的作用,这点...
int
a[10],*p=a
;p++;p++之后是...
答:
内存地址加一!!//如果是元素的话应该这样表示:p=a[i].这时p指向的是数组内的元素,而
*p=a
意思是p里面的值是数组a的首地址,p自己本身也占有一定的内存,也占有一个地址,这个地址和数组a的首地址并不连续.p++之后p与数组a就没有什么关系了// //如
a[]
={1,2,3,};则a[0]=1
,a[
1]=2,a[...
??设有
int
a[10], *p=a
; 则下面哪条语句有错误( )。
答:
答案:D对于数组
a[10],a
就是该数组的首地址,定义指针p赋值为a,那么a和p的操作基本相同:a[5]=p[5]=*(a+5)=*(p+5),对于D选项,p[5]是个
int
值,再取*就不对了。
int
a[10],*p=a
,*q=&a[5];q-p=
答:
因为指针p指向的是数组a的第1个元素,指针q指向的是数组a的第6个元素,注意数组下标是从0开始的,所以q-
p=
5,希望能帮到你。
int
a[10],*p=a
;则p+4表示什么?
答:
p是指向
int
数据类型的指针,由于int
*p=a
;所以他指向
a[
0]p+4表示的是a[4]的地址,所以*(p+4)(取地址p+4上的值)==a[4]p表示的是a[0]的地址
设
int
a[10],*p=a
;则对a[3]的引用可以是p[ ]和*p( )
答:
了解一个知识点,数组的名称其实可以看做是数组空间的首地址,了解这里之后。那么
*p=a
之后,p就指向了
a[10]
的首地址,那么可以用p[3]来代替a[3]
根据声明
int
a[10], *p=a
;,下列表达式错误的是___。 A.a[9] B.p[5...
答:
p[5]就是*(p+5),也就是
a[
5]这个题应该是a++错了,数组名a代表的是地址没错,但这个时候a是个常量,++运算符可不能让常量自动加1,只能是变量,所以错了
1
2
3
4
5
6
7
8
9
10
涓嬩竴椤
灏鹃〉
其他人还搜
以下程序运行时输入25870
下列选项中,合法的C语言关键字是
指针变量p和*p的区别
数组的定义
以下程序的输出结果是
!x在c语言中等于什么意思
int a[10]={10*1}
int a[10],*p=a;
int a[5],*p=a