問題タブ [uint32-t]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
187 参照

c - Cの文字列にuint32_tを出力しますが、文字通りの値ではありません

画像ファイルを読み込んでおり、圧縮された形式をコンソールに表示したいと考えています。

たとえば、私はこれを読みました:format = 861165636 (0x33545844)私の CPU はリトル エンディアンで読み書きするformat = __builtin_bswap32(format);ので、今format = 1146639411 (0x44585433)0x44585433 = "DXT3"ASCII で読み書きします。

これ(「DXT3」)を印刷したいのですが、追加の変数は使用しません。つまり、このようなものですprintf("Format: %s\n", format);(明らかにクラッシュします)。それを行う方法はありますか?

0 投票する
0 に答える
7 参照

type-conversion - uint32_t - long が < 0 の場合とそうでない場合があるのはなぜですか?

次のスクリプトを Godbolt (gcc 11.2) で 1 回、esp32 (xtensa gcc) で 1 回実行しました。Godbolt バージョンは "hello" を出力しませんが、ローカルの esp32 バージョンは出力します。何故ですか?

Godbolt の xtensa も「hello」を出力しないため、コンパイラに依存しているようには見えません。それは私が違いの要因が何であるか疑問に思う.

に変更すると機能するので、型変換と関係があると思います

そのため、あるケースではサブゼロの縮小変換があるようですが、他のケースではそうではありません。これは説明できません。