65,182
社区成员




int main()
{
int a = 5;
int *pa = &a;
*pa = 15;
printf("%d %d\n", a, *pa);//普通变量没问题
const int b[] = {1,2,6};
int *pb = (int*)const_cast<int(*)[3]>(&b);
*pb = 16;
printf("%d %d\n", b[0], *pb);
printf("%d %d\n", &b, pb);//但是地址却是正确的...
return 0;
}
[/quote]
求助:http://ask.csdn.net/questions/2944
int main()
{
int a = 5;
int *pa = &a;
*pa = 15;
printf("%d %d\n", a, *pa);//普通变量没问题
const int b[] = {1,2,6};
int *pb = (int*)const_cast<int(*)[3]>(&b);
*pb = 16;
printf("%d %d\n", b[0], *pb);
printf("%d %d\n", &b, pb);//但是地址却是正确的...
return 0;
}
int main()
{
int a = 5;
int *pa = &a;
*pa = 15;
printf("%d %d\n", a, *pa);//普通变量没问题
const int b = 6;
int *pb = const_cast<int*>(&b);
*pb = 16;
printf("%d %d\n", b, *pb);//常量不行
printf("%d %d\n", &b, pb);//但是地址却是正确的...
return 0;
}