invalid conversion from 'const char*' to 'char*'
2014-04-06 20:33
211 查看
const char*是指向常量的指针,而不是指针本身为常量,可以不被初始化.
该指针可以指向常量也可以指向变量,只是从该指针的角度而言,它所指向的是常量,
通过该指针不能修改它所指向的数据.
1.const char*是不能直接赋值到char*的,这样编译都不能通过,理由:假如可以的话,
那么通过char*就可以修改const char指向的内容了,这是不允许的.
所以char*要另外开辟新的空间
string str = "dasfas";
char* p = (char*)str.c_str();
还有就是把const指针,转换成非const指针,目的不是为了修改指针指向的值,而往往是为了传参的方便。不得已才使用的。
或者用 strcpy的方法
该指针可以指向常量也可以指向变量,只是从该指针的角度而言,它所指向的是常量,
通过该指针不能修改它所指向的数据.
1.const char*是不能直接赋值到char*的,这样编译都不能通过,理由:假如可以的话,
那么通过char*就可以修改const char指向的内容了,这是不允许的.
所以char*要另外开辟新的空间
string str = "dasfas";
char* p = (char*)str.c_str();
还有就是把const指针,转换成非const指针,目的不是为了修改指针指向的值,而往往是为了传参的方便。不得已才使用的。
或者用 strcpy的方法
相关文章推荐
- 对象的三种状态
- 小米和海底捞是如何做好口碑营销的?
- sql2005企业版
- 8.使用do while循环,计算2+4+6+...+100
- 11、实例化bean的三种方式
- 最长公共子序列(不需要连续)
- 在Java Web项目中建src/main/java包
- GWT入门教程
- Struts2 url中包含感叹号实现动态方法调用
- Oracle莫名其妙错误的另类思路
- Kivy a to z -- Kivy的编译环境的搭建以及编译和运行
- 从技术角度思考Hadoop是什么
- Word Ladder II
- CentOS 6.3 64位下mysql5.5.25安装图解教程
- Java中替换HTML标签的方法
- VMware Workstation环境中Linux ping返回出现大量“DUP!”的解决方法。
- iOS设计模式(MVC和单例模式)
- unix域套接字
- C++三大函数(The Big Three)
- 常用的通信协议