[解決済み] sizeof(char)とsizeof(char *)の違いについて
2022-03-01 13:42:45
質問
sizeof(char)とsizeof(char *)の違いが気になるのですが。
char *s;
s = malloc(sizeof(char*)*len + 1);
char *s;
s = malloc(sizeof(char)*len + 1);
これは同じですか?
解決方法は?
char
は文字であり
sizeof(char)
は1と定義されます(
N1570
6.5.3.4 sizeof演算子および_Alignof演算子(第4段落)
char*
は
へのポインタ
文字と
sizeof(char*)
は環境に依存します。通常、32ビット環境では4個、64ビット環境では8個です。
一般的な環境では
sizeof(char*) > sizeof(char)
,
malloc(sizeof(char*)*len + 1)
よりも多くのメモリを確保する(少なくともしようとする)。
malloc(sizeof(char)*len + 1)
もし
len
は整数のオーバーフローを起こさない程度に小さくします。
関連
-
[解決済み】単項演算子「*」の型が無効(「int」がある)C言語でのエラー
-
[解決済み】デバッガgdbの使用時に不明な終了シグナルが発生する。
-
[解決済み] SQLiteのINSERT/per-secondのパフォーマンスを向上させる
-
[解決済み] const int*、const int * const、int const *の違いは何ですか?
-
[解決済み] ++iとi++の違いは何ですか?
-
[解決済み] mallocとcallocの違い?
-
[解決済み] スタティック・ライブラリとシェアード・ライブラリの違い?
-
[解決済み] char s[]とchar *sの違いは何ですか?
-
[解決済み] ストラクチャーとユニオンの違い
-
[解決済み】C/C++の"-->"演算子とは何ですか?
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】組み込み関数「malloc」の暗黙の宣言の非互換性
-
[解決済み】式は、単純なポインタ演算を使用して完全なオブジェクト型へのポインタでなければなりません【重複】。
-
[解決済み】"Expected expression before ' { ' token"(トークンの前に期待される式)。
-
[解決済み】 error: too few arguments to function `printDay' (C言語)
-
[解決済み】 switch case: error: case label does not reduce to an integer constant
-
[解決済み】スレッド1:EXC_BAD_ACCESS(コード=1、アドレス=0x0)標準Cメモリ問題
-
[解決済み] struct has no member named
-
[解決済み】fgetsによるセグメンテーションフォールト(コアダンプ) - と思う。
-
[解決済み】「複数の定義」「最初に定義されたのはここです」エラーについて
-
[解決済み】C言語で入力が整数型かどうかチェックする