掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
char **からconst char **への変換が暗黙に出来ないのはなぜ? (ID:54838)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
先に後者の解説 > funcparent/2は確かにお行儀の悪いコード(ROM上で動作させるコードだとするとちとまずい)だとは思いますが 文字列リテラルの変更は禁じられています (ISO/IEC 14882:1998 2.13.4-2) 手元の HPUX11.00 でこの関数を実行しようとすると core dump しますし、 VC++6 でも -GF オプションを指定するとエラーとなります。 次に前者の解説 > char** が const char ** に変換できない 理由ですが、こんなサンプルを書けば理解できるでしょうか。 int main() { const char c='c'; char *x; const char **y=&x; // error // もしできたとしたら、以下の手順で c を変更できちゃう *y=&c; *x='b'; }
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.