[解決済み] off_tやsize_tのような型はどのように印刷すればよいのですか?
2022-03-04 04:54:28
質問
のようなタイプを印刷しようとしています。
off_t
と
size_t
. の正しいプレースホルダーは何ですか?
printf()
ポータブルな
?
それとも、これらの変数を表示するまったく別の方法があるのでしょうか?
どのように解決するのですか?
を使用することができます。
z
は size_t と
t
のように ptrdiff_t の場合は
printf("%zu %td", size, ptrdiff);
しかし、私のマニュアルによると、ある古いライブラリは
z
と、使用を控えています。とはいえ、(C99規格で)標準化されているのですが。それらのために
intmax_t
と
int8_t
の
stdint.h
などは、他の回答者さんがおっしゃるように、使えるマクロがありますよ。
printf("value: %" PRId32, some_int32_t);
printf("value: %" PRIu16, some_uint16_t);
のmanpageに記載されています。
inttypes.h
.
個人的には、値をキャストして
unsigned long
または
long
別の回答が推奨しているように もしあなたがC99を使っているのなら、次のようにキャストすることができます(もちろん、そうすべきです)。
unsigned long long
または
long long
を使用し
%llu
または
%lld
というフォーマットがあります。
関連
-
[解決済み】変数の警告が設定されているが使用されていない
-
[解決済み] printf ファミリーを使用して、size_t 変数をポータブルに印刷するにはどうすればよいですか?
-
[解決済み] SQLiteのINSERT/per-secondのパフォーマンスを向上させる
-
[解決済み] 1ビットのセット、クリア、トグルはどのように行うのですか?
-
[解決済み] C言語では「?」演算子は何をするのですか?
-
[解決済み] CとC++でmain()は何を返すべきですか?
-
[解決済み] Pythonで現在のユーザー名を取得するポータブルな方法はありますか?
-
[解決済み] プログラム終了前にmallocの後にfreeをしないと本当に何が起こるのか?
-
[解決済み】高放射能環境下で使用するアプリケーションのコンパイルについて
-
[解決済み】SO_REUSEADDRとSO_REUSEPORTはどう違うのですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】「無効なイニシャライザー」と表示されるのですが、何が間違っているのでしょうか?
-
[解決済み】C 未知の型名「my_structure」。
-
[解決済み】警告:組み込み関数'printf'の非互換な暗黙の宣言(デフォルトで有効]
-
[解決済み】Linuxでexeclp()がどのように動作するのか理解できません。
-
[解決済み] エラー:整数が期待されるところで集約値が使用された
-
[解決済み】なぜか。"エラー: 配列型を持つ式への代入"
-
[解決済み】宣言指定子で2つ以上のデータ型がある場合のエラー【非公開
-
[解決済み] '{'トークンの前に期待される式
-
[解決済み】エラー:呼び出されたオブジェクトは、関数または関数ポインタではない
-
[解決済み】C言語におけるsize_tとは?