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

C++常用的字符指针/字符数组/字符串/数字之间的转换

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

C++常用的字符指针/字符数组/字符串/数字之间的转换

目录

1.char* ,const char*,char[]与string 之间的转换

2.string与char* ,const char*,char[] 之间的转换

3.const char* 与 char* 之间的转换

4.数字与string之间的转换

5.string的操作 (Java语言的操作与之类似)

6.字符处理函数 sprintf()


1.char* ,const char*,char[]与string 之间的转换

char *m=(char*)"hello world!";//char *m="hello world!";公司编译器编译不过,不能直接赋值,要强制转换
	const char *p="nice day";
	char n[]="hello 2 world!!";
	string k=m;
	cout <<"n k:" << k << "k.length:"  << k.length() << endl;
	k=p;
	cout <<"n k:" << k << "k.length:"  << k.length() << endl;
	k=n;
	cout <<"n k:" << k << "k.length:"  << k.length() << endl;	
	string kkk(m);//使用 string的构造函数初始化
	cout <<"n kkk:" << kkk << "kkk.length:"  << kkk.length() << endl;

2.string与char* ,const char*,char[] 之间的转换
string kk="dten";
	printf("kk:%s",kk.c_str());//printf("kk:%s",kk);编译不过,参数需要 char* 类型
	//char* p_0=kk.data();//公司环境编译不过
	//char* p_1=kk.c_str();//公司环境编译不过, c_str()返回的只是临时指针不能对其操作,但是能作为函数的参数

	char* p_1=new char[kk.length()+1];
	strcpy(p_1,kk.c_str());
	cout <<"n p_1:" << *p_1 << endl;//这里仅仅输出的是一个字符	
	printf("p_1:%s",p_1);

	const char* p_2=kk.c_str();
	cout <<"n p_2:" << *p_2 << endl;
	printf("p_2:%s",p_2);

	char n_1[kk.length()+1];
	strcpy(n_1,kk.c_str());
	cout <<"n n_1:" << n_1 << endl;

3.const char* 与 char* 之间的转换
	const char* cpc="abcdefg";
	char* pc=new char[100];
	strcpy(pc,cpc);
	printf("pc:%s",pc);

4.数字与string之间的转换

注意导入头文件 #include

int num=0;
	string str="123";
	num=stoi(str);//string 转换为 int,还有stol()字符串转换为长整型,stoll()字符串转换为长长整型
	cout <<"n num:"< 

5.string的操作 (Java语言的操作与之类似)
string s1,s2,s3;
	s1=s2=s3="123456789";
	s3="aaaa";
	s1.insert(5,s3);
	cout << "ns1:" < 

6.强大的字符处理函数 sprintf()
char array_2[100];
    sprintf(array_2,"qweqe%d456789",123);
    printf("narray_2:%sn",array_2);

字符串的格式化,对齐,字符保留位数的处理等,非常强大,详细参考:(7条消息) 整理:C++中sprintf()函数的使用详解_bat67的博客-CSDN博客_c++ sprintf

文章参考:

C++字符串相互转换 - wenglabs - 博客园 (cnblogs.com)

c++中char与string之间的相互转换问题 - 百度文库 (baidu.com)

​​​​​​(7条消息) C++数字转string,string转数字函数总结_HeisenbergWDG的博客-CSDN博客_c++ 数字转string

(7条消息) c++中数字与string转换_w55100的博客-CSDN博客_c++字符串转数字

​​​​​(7条消息) C++中将string类型转换为int, float, double类型 主要通过以下几种方式:_candadition的博客-CSDN博客_c++ string转float​​​​​​

(7条消息) [C++] string转为int, float, double_gz7seven的博客-CSDN博客_c++ string转float

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

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

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