[解決済み] C 言語で int64_t 型を表示する方法
2022-01-30 15:28:06
質問事項
C99規格では、int64_tのようなバイトサイズの整数型があります。Windowsの
%I64d
形式は、現在(または符号なし
%I64u
)のようになります。
#include <stdio.h>
#include <stdint.h>
int64_t my_int = 999999999999999999;
printf("This is my_int: %I64d\n", my_int);
というコンパイラの警告が表示されます。
warning: format ‘%I64d’ expects type ‘int’, but argument 2 has type ‘int64_t’
でやってみました。
printf("This is my_int: %lld\n", my_int); // long long decimal
しかし、同じ警告が表示されます。私はこのコンパイラーを使っています。
~/dev/c$ cc -v
Using built-in specs.
Target: i686-apple-darwin10
Configured with: /var/tmp/gcc/gcc-5664~89/src/configure --disable-checking --enable-werror --prefix=/usr --mandir=/share/man --enable-languages=c,objc,c++,obj-c++ --program-transform-name=/^[cg][^.-]*$/s/$/-4.2/ --with-slibdir=/usr/lib --build=i686-apple-darwin10 --program-prefix=i686-apple-darwin10- --host=x86_64-apple-darwin10 --target=i686-apple-darwin10 --with-gxx-include-dir=/include/c++/4.2.1
Thread model: posix
gcc version 4.2.1 (Apple Inc. build 5664)
変数my_intを警告を出さずに表示するには、どのようなフォーマットを使用すればよいですか?
どのように解決するのですか?
対象
int64_t
の型があります。
#include <inttypes.h>
int64_t t;
printf("%" PRId64 "\n", t);
について
uint64_t
の型があります。
#include <inttypes.h>
uint64_t t;
printf("%" PRIu64 "\n", t);
を使用することもできます。
PRIx64
を使うと16進数で表示されます。
cppreference.comに全リストがあります。
を含むすべてのタイプで利用可能なマクロの
intptr_t
(
PRIxPTR
). のように、scanf用のマクロが別に用意されています。
SCNd64
.
PRIu16の典型的な定義は次のとおりです。
"hu"
そのため、コンパイル時に暗黙のうちに文字列定数の連結が行われます。
コードを完全にポータブルにするためには
PRId32
などを印刷することができます。
int32_t
、および
"%d"
などを印刷することができます。
int
.
関連
-
[解決済み】C言語で「関数の型が競合しています」と表示される、なぜ?
-
[解決済み】 error: too few arguments to function `printDay' (C言語)
-
[解決済み】ヒープ割り当てで初期化されていない値が作成された
-
[解決済み】Linuxでexeclp()がどのように動作するのか理解できません。
-
[解決済み】「複数の定義」「最初に定義されたのはここです」エラーについて
-
[解決済み】MPI通信でMPI_Bcastを使用する場合
-
[解決済み】Linuxソケットのwrite()でBad File Descriptorが発生するC
-
[解決済み】c - 警告:関数 'printf'の暗黙の宣言
-
[解決済み】whileループの時間複雑性(Big O)はどうやったらわかるの?
-
[解決済み] 1ビットのセット、クリア、トグルはどのように行うのですか?
最新
-
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コンパイルエラーです。Idは1終了ステータスを返した
-
[解決済み】組み込み関数「malloc」の暗黙の宣言の非互換性
-
[解決済み】「構造体でもユニオンでもないものにメンバー'*******'を要求する」とはどういう意味ですか?
-
[解決済み】argv[]をint型として取得するには?
-
[解決済み】0LLや0x0ULの意味は何ですか?
-
[解決済み】なぜか。"エラー: 配列型を持つ式への代入"
-
[解決済み】Makefile:1: ***セパレータがありません。停止します。
-
[解決済み】警告:式の結果が未使用の場合
-
[解決済み】execvp: バッドアドレスエラー
-
[解決済み] uint64_tをprintfするには?で失敗する。"spurious trailing '%' in format" で失敗します。