【发布时间】:2017-05-30 08:01:20
【问题描述】:
如果我这样做:
#include <stdio.h>
typedef char **arr2D;
char arr1D [5 * 10];
int main (void)
{
((arr2D)arr1D)[0][0] = '_';
printf("%c", arr1D[0]);
return(0);
}
我收到崩溃,这表明未定义的行为。 为什么我不能这样做?
【问题讨论】:
-
@Inline - 不。额外的星星很重要。
-
@Inline 在某种程度上,这现在甚至接近重复?
标签: c arrays pointers memory-management type-conversion