转化总结如下:

目标格式

源格式

string

const char*

char*

char[]

string

NULL

const char*=string.c_str();

const char*=string.c_str();

char*=const_cast<char*>(const char*);

for(int i=0;i< string.length();i++)

{ char[i]=string[];}

const char*

string =const char*;

NULL

char*=<const_cast><char*>(const char*);

strncpy_s(char,const char*,n);

char*

string =char*;

const char*= char*;

NULL

strncpy_s(char,char*,n);

char[]

string =char;

const char*=char;

char*=char;

NULL

1、变成string,直接赋值。

2、char[]变成别的,直接赋值。

3、char*变constchar*容易,const char*变char*麻烦。const_cast<char*>(const char*);

4、string变char*要通过const char*中转。

5、变成char[]。string逐个赋值,char* const char* strncpy_s()。

转自rongrongyaofeiqi的博客

string、const char*、 char* 、char[]相互转换的更多相关文章

  1. string、const char*、 char* 、char[]相互转换(待整理)

    string.const char*. char* .char[]相互转换(全) https://blog.csdn.net/rongrongyaofeiqi/article/details/5244 ...

  2. 转载:string、const char*、 char* 、char[]相互转换

    本文转自:https://blog.csdn.net/rongrongyaofeiqi/article/details/52442169 一:转化总结形式如下: 使用时,要对源格式和目标格式进行初始化 ...

  3. C++ 字符串、string、char *、char[]、const char*的转换和区别

    1.字符串 字符串本质就是一串字符,在C++中大家想到字符串往往第一反应是std::string(后面简称string) 字符串得从C语言说起,string其实是个类,C语言是没有class的,所以C ...

  4. 【C++】int、const char*、char*、char、string之间的转换

    #include "stdafx.h" #include<string> #include<vector> #include<iostream> ...

  5. string,const char*,char*之间的相互转换

    1. string转const char* string s = "abc"; const char* c_s = s.c_str(); 2. const char*转string ...

  6. [转载] C++ string, const char*, char* 之间互相转换

    1, string转const char* 类型 string str = "abcdef"; const char* con_str = string.c_str() 2, co ...

  7. const char*、char*、char* const、char[]、string的区别

    1.const char* p: p is a pointer to const char(char const* p 一样)   意思就是不能通过p指针来修改p指向的内容(但是内容可以修改). 2. ...

  8. How to convert a std::string to const char* or char*?

    How to convert a std::string to const char* or char*? 1. If you just want to pass a std::string to a ...

  9. string,const char*, char*转换之后还是指向同一片内存地址么?

    class Same { public: void reverse(const char* str) { char* A = const_cast<char*>(str); A[] = ' ...

随机推荐

  1. 360极速浏览器极速模式通过hosts文件切换兼容模式bat脚本

    注意:需要获得管理员权限执行,且后缀为 .bat @echo offsetlocal enabledelayedexpansionset url=被替换的域名set ip=替换的域名set strNe ...

  2. webpack4+express+mongodb+vue 实现增删改查

    在讲解之前,我们先来看看效果如下所示: 1)整个页面的效果如下: 2) 新增数据效果如下: 3) 新增成功如下: 4) 编辑数据效果如下: 5) 编辑成功效果如下: 6) 删除数据效果如下: 7) 删 ...

  3. python注册到eureka

    由于python提供的服务没有加入到注册中心,没有办法实现高可用现将python加入到注册中心实现高可用以下是基础样例,具体功能待完善 # coding:utf- import tornado.htt ...

  4. 关于nodejs

    #!/bin/bashcd /home/software/wget https://nodejs.org/dist/v9.8.0/node-v9.8.0-linux-x64.tar.xztar -xv ...

  5. 计算机网络协议OSI TCP/IP协议--001

    网桥:连接同构的LAN的网络互联设备,(同构的LAN 网是,应用层到逻辑层)   实  现的功能是:MAC子层和物理层.1.帧的发送与接收.2.缓冲的管理.3.协议转换. 路由器:在网络层实现互联,他 ...

  6. CF1038E Maximum Matching 搜索/区间DP

    题目传送门:http://codeforces.com/problemset/problem/1038/E 题意:给出$N$个方块,每个方块有左右两种颜色$a,b$(可以翻转使左右两种颜色交换)和一个 ...

  7. CF1060D Social Circle 排序

    题目传送门:http://codeforces.com/problemset/problem/1060/D 题意:有$N$个人,你要让他们坐成若干个圆环.他们每个人需要坐一把椅子,左手边至少要有$l_ ...

  8. openMP多线程编程

    OpenMP(Open Muti-Processing) OpenMP缺点: 1:作为高层抽象,OpenMp并不适合需要复杂的线程间同步和互斥的场合: 2:另一个缺点是不能在非共享内存系统(如计算机集 ...

  9. 通用漏洞评估方法CVSS 3.0 计算公式及说明

    CVSS 3.0 计算公式及说明 一.基础评价 1. 基础评价公式为: 当 影响度分值 <= 0: 基础分值 = 0 当 0 < 影响度分值 + 可利用度分值 < 10: 作用域 = ...

  10. cmake 添加头文件目录,链接动态、静态库(转载)

    来源网址:http://www.cnblogs.com/binbinjx/p/5626916.html 罗列一下cmake常用的命令. CMake支持大写.小写.混合大小写的命令. 1. 添加头文件目 ...