[解決済み] int32、int、int32_t、int8、int8_tの違いについて
質問
私は、データ型
int32_t
を、最近C言語で作成しました。 32ビットを格納することは知っていますが、その前に
int
と
int32
も同じですか?
また
char
をプログラム内で使用することができます。 プログラムの中で
int8_t
の代わりに?どう違うのでしょうか?
まとめますと。 C言語のint32、int、int32_t、int8、int8_tの違いは何ですか?
どのように解決するのですか?
間
int32
と
int32_t
の間に、(同様に
int8
と
int8_t
) その違いはとてもシンプルで、C言語規格では
int8_t
と
int32_t
という名前のものは定義していません。
int8
または
int32
-- 後者は(存在するとすれば)おそらく他のヘッダかライブラリに由来するものでしょう(おそらく
int8_t
と
int32_t
をC99で参照)。
平野
int
は、他とかなり違いますね。どこが
int8_t
と
int32_t
はそれぞれ指定されたサイズを持っています。
int
は、任意のサイズ >= 16ビットです。時代によって、16ビットと32ビットの両方がそれなりに一般的でした(64ビット実装の場合は、おそらく64ビットであるべきでしょう)。
一方
int
は、すべてのC言語の実装に存在することが保証されており、ここで
int8_t
と
int32_t
はありません。しかし、このことがあなたにとって重要かどうかは疑問の余地があるでしょう。小規模の組み込みシステムや古いコンパイラでC言語を使うのであれば、問題になるかもしれません。デスクトップやサーバマシンで最新のコンパイラを使ってC言語を主に使うのであれば、おそらく問題にはならないでしょう。
おっと--
char
. あなたは
int8_t
ちょうど8ビットであることが保証された整数型が必要な場合(に限る)、charの代わりにcharを使います。文字を格納したい場合は、おそらく
char
の代わりに。そのサイズは(ビット数で)変わることがありますが、正確に1バイトであることが保証されています。しかし、ひとつだけ奇妙なことがあります。
char
は符号付きか符号なしです(多くのコンパイラは、コンパイル時のフラグによってどちらかにすることができます)。もし、符号付きか符号なしかを確認する必要がある場合は、明示的に指定する必要があります。
関連
-
[解決済み】C 未知の型名「my_structure」。
-
[解決済み】makefile:4。*** missing separator. 停止する
-
[解決済み] SQLiteのINSERT/per-secondのパフォーマンスを向上させる
-
[解決済み] const int*、const int * const、int const *の違いは何ですか?
-
[解決済み] ++iとi++の違いは何ですか?
-
[解決済み] JavaScriptの配列宣言で「Array()」と「[]」はどう違うのですか?
-
[解決済み] mallocとcallocの違い?
-
[解決済み] 「is" 演算子が整数に対して予期せぬ振る舞いをする。
-
[解決済み】定義と宣言の違いは何ですか?
-
[解決済み】JavaとC#のintとIntegerの違いは何ですか?
最新
-
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 - 初期化がキャストなしでポインタから整数を作る、さらに2つのコンパイラーエラー
-
[解決済み】Cコンパイルエラーです。Idは1終了ステータスを返した
-
[解決済み】ポインタへの代入時に互換性のないポインタ型からの初期化警告が発生した
-
[解決済み】cudamalloc()の使用。) なぜダブルポインタなのか?
-
[解決済み] struct has no member named
-
[解決済み】MB/sとMiB/sを計算する方法は?
-
[解決済み】EAGAINとはどういう意味ですか?
-
[解決済み】LinuxのI_PUSHに相当するもの
-
[解決済み】argv[]をint型として取得するには?
-
[解決済み] テスト