2

この二つは同じですか?

struct EMPLOYEE {
...
};

int main (void)
{
    //Local Declaration
    struct EMPLOYEE em1;
    struct EMPLOYEE em2;
    ...

    return 0;
}

struct EMPLOYEE {
...
}em1,em2;

後者のケースを使用する場合、前者の場合のようにメイン関数でそれらの構造を宣言する必要はありませんか?

4

2 に答える 2

2
struct EMPLOYEE {
...
};

EMPLOYEE という構造を定義しますが、それ以外の場合はインスタンスを作成しません。

struct EMPLOYEE {
...
}em1,em2;

構造体 EMPLOYEE を定義し、 と という 2 つのインスタンスを作成しem1ますem2

于 2013-03-21T01:12:05.213 に答える
0

を使用して

struct EMPLOYEE {
...
}em1,em2;

その後、次のようにメインでそれらを使用できます

int main (void)
{
    em1.memberx = 2; /*assuming memberx is a member of your structure.*/
    return 0;
}

それ以外の場合は、メイン関数の例で行ったように宣言する必要があります。

このようにする別のオプションがあります:

typedef struct
{
...
}EMPLOYEE;

そして、次のように宣言します。

EMPLOYEE em1;
EMPLOYEE em2;

そしてあなたのメインでもこのようにそれらを使用してください:

int main (void)
    {
        em1.memberx = 2; /*assuming memberx is a member of your structure.*/
        return 0;
    }
于 2013-03-21T01:46:41.817 に答える