dポイントプレゼントキャンペーン実施中!

共用体の全体のサイズを調べようと、

printf("%u",sizeof(test)); //testは共用体の型名です

としたら、コンパイルエラーが出ました。エラーの内容は「'test':定義されていない識別子です」でした。共用体のサイズはsizeofですることができると聞いたのですがどうやるのでしょう?特に共用体全体のサイズを知りたいです。回答よろしくお願いします。

A 回答 (1件)

testではなく、union testでは?



それと、sizeof演算子の評価結果はsize_t型ですので、printfの書式は"%zu"にする必要があります。
古い規格では"%zu"はサポートされませんので、(unsigned int)sizeof(...)のように適当にキャストしてください。
    • good
    • 0
この回答へのお礼

詳しい説明ありがとうございます!
独学なので知らない情報があって助かります。
回答ありがとうございました。

お礼日時:2009/06/28 10:39

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!