const char* から char* へ、const 属性の削除
2022-02-28 04:05:36
const char* = char* char* to const char* can be converted. Sending it over does not work The method to remove the const attribute is as follows. string str = "aaa"; char* p =const_cast<char*>(str.c_str()); printf("%s",p); const_cast is used to discard the const declaration of a variable, but cannot change the const attribute of the object to which the variable refers. That is, const_cast is used for an object that is not originally const; if it is used for an object that is originally const, the result is unpredictable (the C++ language does not provide for such a case), so please note that I underlined "variable" vs. Please note that I underlined "variable" vs "object" above. In general const_cast is used in this case: a const pointer (variable) points to a non-const object, and when the programmer confirms this (that the object pointed to is non-const), he uses the const_cast operator to discard the const modifier of the variable to get a non-const pointer, see "The C++ Programming language (special edition)" for details. language (special edition), Section 15.4.2.1.
char* to const char* can be converted. Sending it over does not work
The method to remove the const attribute is as follows.
string str = "aaa";
char* p =const_cast<char*>(str.c_str());
printf("%s",p);
const_cast is used to discard the const declaration of a variable, but cannot change the const attribute of the object to which the variable refers. That is, const_cast is used for an object that is not originally const; if it is used for an object that is originally const, the result is unpredictable (the C++ language does not provide for such a case), so please note that I underlined "variable" vs. Please note that I underlined "variable" vs "object" above.
In general const_cast is used in this case: a const pointer (variable) points to a non-const object, and when the programmer confirms this (that the object pointed to is non-const), he uses the const_cast operator to discard the const modifier of the variable to get a non-const pointer, see "The C++ Programming language (special edition)" for details. language (special edition), Section 15.4.2.1.
関連
-
C++ std::string は NULL で初期化できない、基本的な使い方
-
解決策:エラー:'cout'は型名ではありません。
-
C++ - 文字列クラス超詳細紹介
-
ランタイムエラー: 'std::logic_error' のインスタンスを投げた後に terminate が呼び出されました。
-
C++ inet_pton, inet_ntop 関数
-
デバッグエラー Assertion Failed 問題について
-
C++】「不完全なクラス型へのポインタは許可されません」を解決する方法
-
新春花火コード】のご紹介] Cに「花火」と書いて、心の中の人に見せてあげてください。
-
C++音声認識
-
C/C++アルゴリズムヘッダーファイルのmax(), min(), abs()、数学ヘッダーファイルのfabs()
最新
-
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++ エラー: 'map' は型名ではありません。
-
エラー: 'xxx' は事前宣言と C++ ヘッダーファイルが互いに含まれているため、型名になりません。
-
C++ max() 関数エラー: 'max' の呼び出しに一致する関数がない
-
エラー: コンストラクタ、デストラクタ、または '.' トークンの前に型変換が必要です。
-
const char*' から 'char*' への変換が無効です。
-
非静的メンバ関数の無効な使用
-
c++ experience summary(1):linux c compile with warning: assign makes pointer from integer without cast reason.
-
[C++] 不完全な型へのメンバーアクセスエラー
-
ベクトル添え字が範囲外のコンテナの使用、その他類似のエラー
-
C++ std::vector要素のメモリ割り当て問題