現在、構造体に関して勉強しています。
構造体に関して教えて頂きたいのですが、
以下のようなコードを生成して、
コンパイルするとエラーが発生するのですが、
その理由がよくわかりません。
レベルの低い質問で申し訳ありません。
[コード][エラー内容][コンパイル環境]を以下に記載します。
どなたか解決方法がお分かりになれば、ご教授頂けないでしょうか。
よろしくお願いします。
#include <stdio.h>
typedef struct sAst{
char A1;
char A2;
}sAst;
typedef struct sBst{
char a;
int b;
sAst* pAst;
}sBst;
int main()
{
sAst Ast1[] = {{1, 25},
{2, 26},
{3, 27}};
sBst Bst1[] = {'M', 19, Ast1};
printf("Bst1=%d\n", sizeof(Bst1));
return 0;
}
上記コードをTest.cというファイルに保存してコンパイルを行うと以下のエラーが発生します。
Borland C++ 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland
Test.c:
エラー E2063 Test.c 21: 不正な初期化(関数 main )
コードの以下の行でエラーが発生しているようなのですが、
その理由がよくわかっていません。
sBst Bst1[] = {'M', 19, Ast1};
[コンパイル環境]
コンパイラー:Borland C++ 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland
OS :Windows7