读书人

关于二维数组和指针的有关问题

发布时间: 2012-09-23 10:28:11 作者: rapoo

关于二维数组和指针的问题
char buf[10][20];

这是一个包含200个字节的二维数组,buf[5][8]应该是第108个字节(5*20+8)

我想作为函数的参数送进去,在里面还是当做数组使用。

但是目前只懂通过指针来传递,只能当指针来使用,不是很方便,有没有更好方法?

void test(char *pbuf, int bytes_per_line)
{
// buf[5][8]变成以下写下
char ch108 = *(pbuf + bytes_per_line * 5 + 8);
}

能不能写成pbuf[5][8]这种方式?应该怎么办呢?



[解决办法]
&buf【5】【8】
[解决办法]
buf[5][8]的地址:
&buf[5][8]
buf[5]+8
*(buf+5)+8

读书人网 >VC/MFC

热点推荐