C语言数组这种用法,在C标准中叫什么名字,主要用来做什么或只是提升灵活性?
#include <stdio.h>int main()
{
int a = {0,1,2};
printf("%d\n",2); //为什么也能正常输出2
return 0;
}
int a = {0,1,2};
000000013F6E1034mov dword ptr ,0
000000013F6E103Cmov dword ptr ,1
000000013F6E1044mov dword ptr ,2
2 = 3;
000000013F6E104Cmov dword ptr ,3
a = 1;
000000013F6E1054mov dword ptr ,1
return 0;
#include <stdio.h>
int main()
{
int a = {0,1,2};
int j = 1;
j = 3;
printf("%d\n",j);
printf("%d\n",a);
return 0;
} a 相当于 *(a + 2)
2 相当于 *(2 + a)
*(a + 2) 相当于 *(2 + a)
所以 a 相当于 2
页:
[1]