栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C++ Convert string类 to const char* / char* /int

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C++ Convert string类 to const char* / char* /int

文章目录
  • 前引
  • 1. Convert string to const char*
  • 2. Convert string to char*
  • 3. Convert string to int

前引

博主经常遇见需要将string类转换为const char*,char *的要求,因为函数的参数只接收char * / const char*的参数,如SQLConnect。


1. Convert string to const char*

method①:

const char* constCharPtr = object.data();

string:data()

method②:

const char* constCharPtr = object.c_str();

string::c_str()

string::data()与string::c_str()区别在于前者指向的字符数组不以‘’结尾。


2. Convert string to char*

method①:

char* charPtr = const_cast(object.data());
char* charPtr = const_cast(object.c_str());

const_cast用于消除对象的const属性
const_cast

method②:

  	int len = object.size();
	char* charPtr = new char[len+1];
	copy(object.cbegin(), object.cend(), charPtr);
	charPtr[len] = '';

用标准算法copy(),需包含头文件

Convert a std::string to char* in C++


3. Convert string to int

method①:

int intObject = atoi(object.c_str());

method②:

int intObject = stoi(object);

method③:

    int len = object.size();
	int* intPtr = new int[len];   
	for (int i = 0; i <= len; i++)
	{
		*(intPtr + i) = object[i] - '0';
	}

Converting Strings to Numbers in C/C++

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/957732.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号