永远的秘密gl百度云:C++中的long(*)[3][4]和为long*[3][4]是否一样?后者是否是错误的?

来源:百度文库 编辑:高校问答 时间:2024/04/28 00:27:21
C++中的long(*)[3][4]和为long*[3][4]是否一样?后者是否是错误的?
前者应该怎样解读类型?是不是一个48个LONG*的指针?还是就是一个指针变量?我不能理解呀

对于*( *( *( b + 1 ) + 1 ) + 1 ) = 5;,b返回类型为long[2][3][4]的数字3012,原类型为long[3][4],则b + 1将先进行隐式类型转换以将3012转换为long(*)[3][4],而sizeof(long[3][4])=48字节,则b + 1将返回类型为long(*)[3][4]的数字3012+48=3060,而*( b + 1 )返回类型为long[3][4]的地址类型的数字3060,再返回类型为long[3][4]的数字3060。则*( b + 1 ) + 1返回类型为long(*)[4]的数字3060+sizeof(long[4])=3076,同理,*( *( *( b + 1 ) + 1 ) + 1 )返回long类型的地址类型的数字3076+sizeof(long)=3080,将5放在3080所标识的内存中。由前面对“[]”的说明可知*( *( *( b + 1 ) + 1 ) + 1 ) = 5;等效于b[1][1][1] = 5;,可如上自行推验。应注意虽然b是多维数组,但它仍是一块连续的内存空间。

....你发错地方拉``这是恋爱区老大`你发这么高学量的问题`去教育/科学那边发才对。

呵!是不是发错地方拉!
这应该发在计算机那里

这是啥

http://post.baidu.com/f?ct=&tn=&rn=&pn=&lm=&sc=&kw=%CD%F5%B6%AB%B2%B3&rs2=0&myselectvalue=1&word=%CD%F5%B6%AB%B2%B3&tb=on
有空来王东渤吧看看

四级过了80分,六级过了75分才有机会参加口语考试.60分就是合格,85分以上才是优秀.