次の変数があります。
UWORD64 length;
UWORD32 thumbnail_offset;
UWORD32 thumbnail_length;
UWORD64 sum;
そして、これが私がやりたいことです:
sum = (UWORD64)(thumbnail_offset + thumbnail_length);
main_image_length = (UWORD32)(length - sum);
しかし、最初の行でエラーが発生します:非スカラー型への変換が要求されました
そして、2行目にエラーが表示されます:無効なオペランドからバイナリへ - (have 'UWORD64' and 'UWORD64')
何が問題なのかわかりません。下位のタイプを昇進させるべきではありませんか?これが問題を引き起こしているのはなぜですか?