だれだよ,こんなプログラム考えたやつ
ほげほげ言いすぎだな.
#include
typedef struct HOGE {int H0GE;struct HOGE *HOGE} HOGE;
struct HOGE variable_1;
HOGE variable_2;
HOGE H0GE;
int main(){
printf("%d\n",sizeof(HOGE));
return 0;
}
今回は実行結果よりも宣言の意味とかだな.
本当は
も通るらしいんだが,GCCは通らなかった.
↓改良版
#include
#include
typedef struct HOGE{
int H0GE;
struct HOGE *HOGE;
}HAGE;
typedef struct HAGE{
HAGE HAGE;
}HOGE;
int main()
{
HOGE H0GE;
H0GE.HAGE.HOGE = (HAGE *)malloc(sizeof(HAGE));
printf("%d\n",sizeof H0GE.HAGE.HOGE->H0GE);
}
これはうぜぇ