以下代码有效,但我被告知它不能与 gcc 3.4.2 和 Visual C++ 2010 一起编译,并且可能是非法的:
int ar1[]{0,1,2,3,4,5,6,7,8,9},
*ptr1 = ar1,
ar2[]{0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18},
*ptr2 = ar2;
显然,您需要对其进行一些修改才能使其正常工作(类似这样):
int ar1[]{0,1,2,3,4,5,6,7,8,9};
int *ptr1 = ar1;
int ar2[]{0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18};
int *ptr2 = ar2;
那正确吗?数组和指针不能一起声明吗?
(代码在 QT + gcc 4.8 上编译良好)