プログラミング

C

sizeof演算子で予期せぬ値が返ってくる

    char *s1 = "ARRAY1";
    m = sizeof(s1)
とすると、文字列ARRAY1の長さ+終端文字でmは7になるかと思ってしまうが、この場合char型のポインタのサイズがmに代入され、32bitマシンの場合4、64bitマシンの場合8(多分)となる。
参考ページ

タグ:

+ タグ編集
  • タグ:

このサイトはreCAPTCHAによって保護されており、Googleの プライバシーポリシー利用規約 が適用されます。

最終更新:2008年06月13日 00:31
ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。