ID非公開

2021/11/29 21:24

22回答

構造体のグローバル変数に関してです。 typedef struct gfunc { int i; } tfunc; tfunc gs; gs.i = 100; // errorが起きる。

ベストアンサー

0

ID非公開

質問者2021/11/30 11:29

型を再定義できるとは、全く知りませんでした。 ありがとうございます!

ThanksImg質問者からのお礼コメント

新しいことを教えていただきありがとうございました!!

お礼日時:2021/12/4 1:52

その他の回答(1件)

1

(ID非公開) gs.i = 100; 変数の初期化ではなく代入文だからです int i; i=100; これもエラーになります。 初期化は宣言と同時に行う必要があります int i=100; これはOK tfunc gs={100}; これはOK

1人がナイス!しています

ID非公開

質問者2021/11/29 22:26

なるほど。初期化と代入がごちゃごちゃになってまた。 型宣言したときに=で初期化なんですね。 一番最初に行われる=は、すべて初期化かと思ってました。windcat先生ありがとうございます!