99问答网
所有问题
当前搜索:
一维数组和二维数组
为什么C语言
二维数组
a[2][2], a和*a输出是相同的,都表示一个地址_百度...
答:
二维数组
可以理解为几个指向
一维数组
的指针组成指针数组。所以从类型上讲,a是指向指针的指针,*a是指向一行一维数组的指针。但a作为数组名,又表示了数组首地址(在内存中元素地址是连续的)。a是第一行数组首地址。所以值相同 (注意只是值相同,比如a[n]和(*a)[n]意义就不一样,一个表示第n行...
c语言中*(*(c+1)+1)的意思 c是
二维数组
答:
从0起算,*(*(c+1)+1)是第1行的第1个元素的值。即若有
数组
c[3][3]={{1,2,3},{4,5,6},{7,8,9}};,则*(*(c+1)+1)=5,也就是c[1][1]的值。
c语言中如何通过二级指针来操作
二维数组
答:
1、首先我们打开电脑里的C语言软件,新建一个工程和.c文件,输入头文件和主函数。2、然后我们输入图示代码初始化数组,定义变量类型。3、然后我们输入图示代码用for语句实现数组的访问。4、然后我们输入图示代码进行输出。5、然后我们输入图示代码编译、运行,即可通过二级指针来操作
二维数组
。
C 语言指针的指针
和二维数组
的区别?
答:
指针的指针
和二维数组
完全俩东西,二维数组是
一维数组
的一维数组,元素是数组,所以可以隐式转化为int (*)[3],跟int **两回事,扩展到更多维或其它类型也是成立的,只能隐式转化为第一维的元素的指针 补充说明下隐式转化为指针,简单说就是这样(T是任意类型)设有一个数组T a[10];a的类型是“...
java
二维数组
int[][]a={{1,2,3,},{4,5,6},{7,8,9}}什么意思,
答:
二维数组
可以看成一个表格,一个表格可以有任意行和列 {1,2,3},{4,5,6},{7,8,9}表示表格的行,不是二维就只有2行,可以任意行 1,4,7表示第一列,2,5,8表示第二列,3,6,9表示第三列 通过行和列就可以获得该位置的元素,比如第三行第二列元素a[2][1]的值是8(下标是从0开始...
为什么不能把
二维数组
名/行的首地址赋给指针?
答:
此外,&a[i]和a[i]也是等同的。因为在
二维数组
中不能把&a[i]理解为元素a[i]的地址,不存在元素a[i]。C语言规定,它是一种地址计算方法,表示数组a第i行首地址。由此,我们得出:a[i],&a[i],*(a+i)和a+i也都是等同的。另外,a[0]也可以看成是a[0]+0,是
一维数组
a[0]的0号...
c语言程序:定义1个 m*n 的
二维
整型
数组
a以及一个
一维
整型数组b
答:
//#include "stdafx.h"//vc++6.0加上这一行.include "stdio.h"define M 8 define N 10 void main(void){ int a[M][N],b[M*N],m=M,n=N,i,j,k;for(k=i=0;i<m;i++){ for(j=0;j<n;j++){ printf("%4d",a[i][j]=i+j);b[k++]=n*i+j;} printf("\n");}...
为什么C语言中
二维数组
的数组名a和*a表示的是同一个值?
答:
其指向
二维数组
的首地址。于是a的值就是首地址的值。而*a,就是a[0],a[0]是第一行的标记,代表第一行的首地址。在二维数组中,所有元素都是紧密排列的,这样整个数组的首地址,第一行的首地址,和第一个元素的首地址,即a, a[0], &a[0][0] 都是相同的。于是a和*a的值是相同的。
C语言的
数组和
指针问题,谢谢高手的解答!
答:
所以B是一个2级常指针,同样指向
二维数组
的第一个元素B[0],而B[0]是一个
一维数组
。总结,问题的关键在于,数组名相当于一个指向于这个数组第一个元素的指针。3)所以,int A[2][3][4]={0};A是一个三维数组,其中A[0]和A[1]都是它的元素,A[0]是第一个元素。所以, A是一个三级...
C语言中的
二维数组
里a+1和*(a+1)为什么都是地址
答:
表示列)后面的1表示行数组移动1行 0表示列的移动 所以是1行0列的地址 (a+1)中a是二级指针 取值二级指针是一级指针 一级指针指向的
一维数组
(
二维数组
中的行)一维数组移动一位只能是向下移动也就是行 所以就是 第一行的首地址,也就等于二维数组中,第一行零列的地址。
棣栭〉
<涓婁竴椤
5
6
7
8
10
11
12
9
13
14
涓嬩竴椤
灏鹃〉
其他人还搜