变量给二维数组赋值

volatile unsigned short BUFFER[x][y];
int x,y;
unsigned int c;
int p=0;
unsigned char bb[ ];

c=bb[p+1] | (bb[p]<<8);
BUFFER[x][y]=c;
我想问这个变量c 是怎么赋给二维数组BUFFER的?

BUFFER[x][y]有个地址,c也有个地址;BUFFER[x][y]=c;这样写编译器就把它解释成从c的地址单元中拿出内容来存放到BUFFER[x][y]的地址单元中去。这样就把c的值赋给BUFFER[x][y]了。注意,BUFFER是二维数组,而BUFFER[x][y]只是第x行、第y列的一个元素,所以并不能认为是给二维数组赋值,只是对它的某一个元素赋值。追问

ok, 谢谢你的解释,让我想明白了那个函数的过程!

温馨提示:答案为网友推荐,仅供参考
相似回答