我是靠谱客的博主 忐忑秀发,最近开发中收集的这篇文章主要介绍C++各种数据类型(char*, string, int, double等)的相互转换1. String转换2. Char*以及Char[]转换3. Int,float,double转换,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

岁数大了,脑子就记不住东西了。每次写程序,到了数据转换这里,都要现查网上的代码。为了节省时间,我就在这篇博客里列出一些经常用到的类型转换代码,方便查找并使用,也希望能够帮助有需要的同学。

1. String转换

string转char*和char[]

string _3D_object_path="Hello!";
char * p = new char[strlen(_3D_object_path.c_str()) + 1];
strcpy(p, _3D_object_path.c_str());

string ts = "Hello world!";
char ts1[100]; //查了很多方法,貌似都不能进行动态的指定
strncpy(ts1, ts.c_str(), ts.length() + 1);       // 注意,一定要加1,否则没有赋值'' 

string转int,double,float

std::string str = "12345";
int i = atoi(str.c_str());

std::string str2 = "12345.56";
float f1 = std::stof(str2);
double d1 = std::stod(str2);

f1: 12345.5596
d1: 12345.559999999999...

string转bool(自己瞎写的)

std::string str3 = "true";
bool t1 = (str3 == "true");

2. Char*以及Char[]转换

char*与char[]转string

//直接赋值
char sc[] = "hello";   
char* sc2;
string st1 = st;
string st2 = sc2;

char*与char[]转int,float以及double可以先转string然后再处理

char*与char[]互转

//char[]转char*
char sc1[] = "Hello";
char *sc2 = sc1;

//char*转char[]
const char *sc1 = "Hello,world";
char sc2[100];
strncpy(sc2, sc1 , strlen(sc1) + 1);    // 注意加1操作 

char*与const char*互转

//const char* to char*
const char *sc = "Hello,world";
char *sc2 = new char[strlen(sc) + 1];
strcpy(sc2 , sc);

//char* to const char*
char *sc3 = "Hello,world";     
const char *sc4 = sc3;

3. Int,float,double转换

转string

string to_string (int val);
string to_string (long val);
string to_string (long long val);
string to_string (unsigned val);
string to_string (unsigned long val);
string to_string (unsigned long long val);
string to_string (float val);
string to_string (double val);
string to_string (long double val);

转char*或char[]可以间接通过string实现。

最后

以上就是忐忑秀发为你收集整理的C++各种数据类型(char*, string, int, double等)的相互转换1. String转换2. Char*以及Char[]转换3. Int,float,double转换的全部内容,希望文章能够帮你解决C++各种数据类型(char*, string, int, double等)的相互转换1. String转换2. Char*以及Char[]转换3. Int,float,double转换所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(29)

评论列表共有 0 条评论

立即
投稿
返回
顶部