99问答网
所有问题
二维数组名为什么不能直接赋值给二重指针
如题所述
举报该问题
推荐答案 2017-07-07
因为二维数组名的类型不是二重指针
比如 int a[3][5];
int (*p)[5] ;
然后p=a这样才是正确的
如果只是int **p就不对了
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://99.wendadaohang.com/zd/WWWB7Ojjzeze7zzvjzj.html
相似回答
二维指针
与
二维数组
异同分析
答:
你可能会认为这样做是正确的,但实际上是错误的,运行时会出现段错误
。原因在于,将二维数组作为二重指针传递时,只是传递了数组的头指针,而其内部结构不清楚是否能够正确访问。修改方法:将主函数中的数组声明由char a[ROW][COL]改为char *a[COL](在C++中还有const char*问题,但在此主要探讨这部分...
C语言中的
二维数组名
是一个
二重指针
吗?
答:
对于
二维数组
a[2][2],a也是一个地址,并且这个值也等于a[0],也等于a[0[0]的地址,即&a[0][0],由此看来对a取地址的值是一个变量值(不是
指针
),所以a并不是一个二级指针,最多算一个一级指针。
C++
二维数组名
指的是数组的首地址吗?
答:
2、那么
二维数组名
是否代表二维数组的首地址呢?答案是肯定的,因为二维数组的本质是一维数组,它在内存中的存储也是按照一维数组的方式存储的。所以数组名始终代表数组的首地址。3、我们可以编程取地址确认是否正确.答案输出yes。int main(){ int arr[4][4] = {0};if(arr == &arr[0][0])print...
C语言
指针
定义,float **p;
答:
书上写的并不是很准确。首先你需要明白
二维数组名
和
指针
的关系 对于这个二维数组,我们举例为:1 2 3 4 5 6 7 8 9 10 11 12 因为数组名表示数组的首地址,<1>所以a表示第一行的首地址 即:a→1 2 3 4 5 6 7 8 9 10 11 12 这时a+1则表示...
c语言
指针
:a为
二维数组
,那a[0]是
什么
类型?是指针还是数组?
答:
在
二维数组
a中,a[0][0]是第一行的第一个元素,a[0]则是指向第一行第一个元素的
指针
即a[0] = &a[0][0];a是
数组名
,也是指向第一行的第一个元素的指针所以a = &a[0][0];至于 a = &a[0] ,因为a[0]并不是从 其他地方 弄了个空间保存&a[0][0]; 它就在这个数组的空间里...
C语言中char**是
什么
意思? 和char*有什么区别呀
答:
意思:char ** 指向字符型
指针
的指针;区别:char *字符型指针,指向一个字符;数据在内存中的存储区域 1、栈:就是那些由编译器在需要的时候分配,在不需要的时候自动清楚的变量的存储区。里面的变量通常是局部变量、函数参数等。2、堆:就是那些由new或malloc分配的内存块,在不适用时,要手动用...
函数返回
二维数组
答:
第一个是
数组
溢出,这个程序自己可以修正,第二个是索引超范围,程序就没加办法了(7*7=?)
c语言中float **x 是
什么
意思?
答:
表示指向,指向
指针
的指针。从逻辑上来说,感叹号表示是或否,x是变量,如果x为0则!X是1,对边是0。如果X为“0”(false),则“!”X"不等于0,所以它在里面是成立的,所以它在if下面很大。如果X不为“0”(为真),则为“!”X"为0(为假),则里面为假,略过下面的大if。
...个数为变量的一维
数组
吗?如果
不能
的话可以用
什么
方式来达到这个效果...
答:
能!下面给出参考资料:动态数组分配 下面的程序片段首先通过
指针
配合new运算符生成了一个动态的
二维数组
a(其行数lin 及列数 col通过 cin 临时输入),而后又为数组各元素赋了值。请在此基础上编制完整程序并 上机进行调试运行,并输出结果。int lin,col,i,j;cin>>lin>>col; //任意输入行数 ...
大家正在搜
一维数组怎么赋值给二维数组
二维数组指针赋值
指针给数组赋值
怎么把二维数组用指针
指针怎么表示二维数组
二维数组怎么用指针输入
指针数组的元素怎么赋值
c语言指针指向二维数组
行指针指向二维数组
相关问题
二维数组名为什么不能直接赋值给二级指针。
二维数组名不能赋值给二级指针- -
为什么不能把二维数组名/行的首地址赋给指针?
C语言中的二维数组名是一个二重指针吗?
二重指针与二维数组的关系
二维数组不能直接赋值吗?
指向二维数组的指针该怎么赋值?
c语言问题,用指针为一个二维数组赋值