C++中出現《E0144 "const char *" 型別的值不能用於初始化 "char *" 型別的實體》的錯誤解決方法
一
使用Visio Studio寫C++的專案時,定義如下形式的字串char *text = “XXX”,總是會出現
E0144 “const char *” 型別的值不能用於初始化 “char *” 型別的實體這樣的錯誤。
比如下面的程式碼段:
這樣的錯誤解決起來完全就沒有頭緒呀。
然後……之後……搜尋……(中間過程)
我就發現了幾種解決方法,現在整理一下,省的以後忘了。
方法1:
把char* 改成const char*
這個問題其實在宣告變數 char* 時改成 const char *宣告就在主函式呼叫時就不會在報錯了。
但是又出現了這樣的錯誤。
所以我就發現了方法2。
方法2:在專案上右鍵,在彈出選單上選擇“屬性”,選擇“C/C++”,然後在“語言”中,把“符合模式”改為“否”就好了。
關於這個方法2,在Visio Studio2015之前是沒有這個選項的,預設就是否。
所以改了,就好了……
相關文章
- E0144 "const char *" 型別的值不能用於初始化 "char *" 型別的實體型別
- 【C++】CONST CHAR*型別的值不能用於初始化CHAR*型別的實體C++型別
- const char* 型別不能用於初始化char* 型別實體型別
- 【筆記】VS2017中出現 "const char *" 型別的值不能用於初始化 "char *" 型別的實體筆記型別
- VS2019【C++報錯】E0144"const char *" 型別的值不能用於初始化 "char *" 型別的實體C++型別
- 【VS2019 C++】"const char *" 型別的值不能用於初始化 "char *" 型別的實體C++型別
- VS2019中出現E01104“const char *”型別的值不能用於初始化“char *”型別的實體的錯誤的解決辦法型別
- VS C++ 2017中const char* 型別的值不能用於初始化char*的解決C++型別
- "LPWSTR" 型別的值不能用於初始化 "char *" 型別的實體型別
- VS中”LPTSTR" 型別的值不能用於初始化 "char *" 型別的實體型別
- 關於VS2017中const char *不能用於初始化char *型別的實體的問題型別
- const char*, char const*, char*const的區別
- char型別的數值轉換型別
- const char*, char const*, char*const 有何區別?
- 避免使用Oracle的char型別Oracle型別
- CHAR型別函式索引導致結果錯誤型別函式索引
- C++中string、char *、char[]、const char*的轉換C++
- PL/SQL中char型別的暗門SQL型別
- NTMySQL中varchar和char型別的區別heeMySql型別
- MySQL字元資料型別char與varchar的區別MySql字元資料型別
- Oracle的資料型別:char/varchar2Oracle資料型別
- 當char型變數遇上char*型的指標變數指標
- 關於Mapreduce Text型別賦值的錯誤型別賦值
- Python工作筆記-往dll中傳入char*型別的引數並且如何接收char*的值Python筆記型別
- C# - char型別的一些介紹C#型別
- 聊聊Oracle 11g中的char型別使用Oracle型別
- ABAP中Char型別資料轉換成Decimal型別型別Decimal
- char str[]和char *str的區別
- Oracle CHAR,VARCHAR,VARCHAR2,nvarchar型別的區別與使用Oracle型別
- MySQL資料型別操作(char與varchar)MySql資料型別
- 應用中避免使用char/nchar型別型別
- C++中char* const char* string 之間的轉換複習C++
- MySQL中資料型別(char(n)、varchar(n)、nchar(n)、nvarchar(n)的區別)MySql資料型別
- 【基礎】Oracle CHAR,VARCHAR,VARCHAR2,nvarchar型別的區別與使用Oracle型別
- Java char 型別究竟佔幾個位元組?Java型別
- MySQL CHAR和VARCHAR資料型別介紹MySql資料型別
- const char*的全特化
- C/C++中各種型別int、long、double、char表示範圍(最大最小值)C++型別