float (*pointer)[4]和float *pointer[4]的区别,并且说明原理,多谢
float (*pointer)[4]和float *pointer[4]的区别,并且说明原理,谢谢
float (*pointer)[4]和float *pointer[4]的区别,并且说明原理,谢谢
我知道后者,我想问前者指的是什么内容,具体一些,谢谢!
------解决方案--------------------
float a[][2] = {{1,2},{3,4}}
相当于float (*pointer)[2]
问个问题 *pointer 表示什么,为什么?
----------------------------------------
float a[][2] = {{1, 2}, {3, 4}};
表示a是个2*2的数组
float (*pointer)[2];
这是定义一个(1维)数组的指针,该数组含有2个元素,每个元素都是float型
pointer则是指向这个数组,
此时可以进行赋值pointer = a;(因为a也可以理解成为一个1维数组的指针)
------解决方案--------------------
搂住好好读一下这段代码就明白了!
float (*pointer)[4]和float *pointer[4]的区别,并且说明原理,谢谢
我知道后者,我想问前者指的是什么内容,具体一些,谢谢!
------解决方案--------------------
float a[][2] = {{1,2},{3,4}}
相当于float (*pointer)[2]
问个问题 *pointer 表示什么,为什么?
----------------------------------------
float a[][2] = {{1, 2}, {3, 4}};
表示a是个2*2的数组
float (*pointer)[2];
这是定义一个(1维)数组的指针,该数组含有2个元素,每个元素都是float型
pointer则是指向这个数组,
此时可以进行赋值pointer = a;(因为a也可以理解成为一个1维数组的指针)
------解决方案--------------------
搂住好好读一下这段代码就明白了!
- C/C++ code
#include <stdio.h> int main() { float a[][2] ={{1.1,2.2},{3.3,4.4}}; float (*pointer)[2]; pointer=a; printf("%5.2f,%5.2f,%5.2f,%5.2f\n",(*pointer)[0],(*pointer)[1],(*(pointer+1))[0],(*(pointer+1))[1]); system("pause"); return 0; }