首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

关于指针的有关问题 急

2013-01-07 
关于指针的问题 急~~~t*(*(p+i)+j)报错 left must be ....我把它改成*(p+i*4+j)就对了 老实说这两个是等

关于指针的问题 急~~~
t=*(*(p+i)+j)
报错 left must be ....
我把它改成
*(p+i*4+j)就对了 老实说这两个是等价的啊 为什么不对
其中p为指向A【5】【5】的指针 为什么 求细致解释 !!!要细致啊!
[解决办法]
我怎么感觉很奇怪呢?
首先来说,*(*(p+i)+j)是没有问题的,它就是a[i][j]。
再一个,你说p是指向A[5][5]的,那p应该是一个双重指针啊,要不就是char **p,或者是char (*p)[5]。
[解决办法]


*(*(p+i)+j),你在前面定义的p是指向整型的指针,而你在这个表达式中
             对它进行了两次*操作,这明显是错的。
应该改为 int (*p)[5] = a;

热点排行