使用Visio Studio写C++的项目时,定义如下形式的字符串
char
*text = “XXX”,总是会出现
E0144 “const
char
*”
类型
的
值
不能
用于
初始化
“
char
*”
类型
的
实体
这样的错误。
比如下面的代码段:
这样的错误解决起来完全就没有头绪呀。
然后……之后……搜索……(中间过程)
我就发现了几种解决方法,现在整理一下,省的以后忘了。
把
char
*...
VS2017项目出现"const
char
*"
类型
的实参与 “
char
*”
类型
的形参不兼容错误的解决方法
解决方案一
在VS2017 中依次点击项目(或者右键解决方案中的项目,点击属性)->属性->C/C+±>语言->符合模式,将原来的“是”改为“否”即可。
解决方案二
在声明变量
char
* 时改成 const
char
*即可
VS2017后期版本、VS2019版,对于直接利用
char
*
类型
声明变量时会产生““const
char
*”
类型
的
值
不能
用于
初始化
“
char
”
类型
的
实体
”的错误,解决办法有3种。
在
char
*前加const关键字
const
char
*str1 = "ABC";
对变量进行强转
char
*str1 = (
char
*)"ABC";
对变量先进行字符数组...