简体   繁体   English

任何人都可以解释以下程序的输出

[英]Can anyone please explain the output of the following program

#include <stdio.h>

int main()
{
    typedef int x[2];
    x myArray[3] = {1, 2, 3, 4};//line 1
    printf("\n%u", sizeof(myArray)); //line 2
    printf("\n%d", myArray[1][0]);//line 3

    return 0;
}

Output :输出 :

24 24

3 3

Can anyone explain how line 3 gives output 3谁能解释第 3 行如何给出输出 3

typedef int x[2]; x myArray[3] = {1, 2, 3, 4};

is the same as是相同的

int myarray[3][2] = {
    {1, 2}, // myarray[0][0], myarray[0][1]
    {3, 4}, // myarray[1][0], myarray[1][1]
    {0, 0}, // myarray[2][0], myarray[2][1]
};

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM