00问答网
所有问题
当前搜索:
数组元素地址表达式
C语言中,
数组
在内存中占一片连续的存储区,由什么来代替它的首
地址
?
答:
C语言中规定,
数组
名就代表了该数组的首
地址
。整个数组是以首地址开头的一块连续的内存单元。如有字符数组char c[10]。设数组c的首地址为2000,也就是说c[0]单元地址为2000。则数组名c就代表这个首地址。因此在c前面不能再加地址运算符&。如写作scanf("%s",&c);则是错误的。在执行函数printf...
不能表示a
数组元素
的
表达式
是什么?
答:
不能表示a
数组元素
的
表达式
是( B) a[10] )---因为数组a的最大下标只能是9,即a[9],a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9],一共10个元素。A、*p ---表示取p指针指向的单元的值,即表示取数组a的首个元素a[0]的值。B、a[10] ---因为数组a一...
...并在以后的语句中未改变p的值,则不能表示a[1]
地址
的
表达式
是...
答:
选择答案C,a++表示的是先去a的值,然后再进行加1的操作,也就是说因此a++表示a[0]的
地址
,但是它错误的主要原因是因为a是
数组
的首地址,是一个常量不能够改变,这是错误的主要原因,如果能改变也是a[0]的地址不会是a[1]的地址。p+1,a+1,++p(先进行自加的操作再取值,所以可以表示a[1...
求
元素
在二维
数组
中
地址
.
答:
你的二维数组A[0:8,1:5]是这个? 我只见过A[m][n]型的。。。二维数组其实物理上海市按一位数组存的。例如A[2][3] 内存中是连续的A[0][0]A[0][1]A[0][2]A[1][0]A[1][1]A[1][2]...这样存储的。这是按行存储。 然后知道第一个
地址
,知道每个
数组元素
字节。 自己...
C语言问题
答:
5) 若有以下声明和语句,则能表示a
数组元素地址
的
表达式
是 D 。double a[5], *p1;p1=a;A. a+0 B. p1+5 C. *p1 D. &a[5]6) 若有以下声明int a[5], *p=a; 且0<=i<5, 则对a数组元素的非法引用是 D 。A. a[i] B. *(a+i) C. *(p+i) ...
二维
数组
A中,每个
元素
A的长度为3个字节,行下标i从0到7,列下标j从0到9...
答:
LOC(a47)=LOC(a00)+(j*m+i)*L=SA+(7*8+4)*3=SA+180
C++问题,高手来
答:
C 理由:A:x是数组的首
地址
,但x为常量,不能自加,错误。B:ptr是指针,指向x数组,表示的是x数组的首地址,&为取地址符号,则&ptr为ptr这个指针的地址,错误。C:k为int型,且k的范围在数组内,不会造成溢出,ptr指向x,表示的是数组的地址,则ptr[k]表示
数组元素
,则&ptr[k]表示第k个...
C语言的一个概念性问题,我很难理解。希望C理解的深的给我详细解释解释...
答:
2.然后,这里一堆的东西不好看,做个简化:因为a是二维
数组
的名字,故a+i是第i行的行指针,相当于一个一位数组的数组名。把a+i记作x,那么(a+i)[j] 就可以记成 x[j]。3.由取下标运算的含义:x[j]实际上是*(x+j),即先找
地址
后进行间接运算。而x是a+i,代进去就得到*(a+i+j)...
数组
按列存储
地址
答:
总共占有9*10=90个内存
地址
,行序存放时,A[8][5]实际在第9行第5列,所以其占的内存地址为(9-1)*10+5=85,也即是说存放在第85个地址。那么如果按列序存放时9*(A-1)+B=85(A为列,B为行),这是一个二元一次方程,看似不能解,但是注意;有约束条件:1<=A<=10;1<=B<=9;所以A=...
数据结构,二维
数组
,求
元素地址
答:
1.9572 2.1228
棣栭〉
<涓婁竴椤
3
4
5
6
8
7
9
10
11
12
涓嬩竴椤
灏鹃〉
其他人还搜