加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c++标准库数字与字符相互转换

发布时间:2020-12-15 04:52:49 所属栏目:百科 来源:网络整理
导读:1.字符串转数字 使用C++11引入的C++库函数将string转换为数值类型,相应的库函数申明于头文件 中。 名称?? ?原型?? ?说明 stoi?? ?int stoi (const string str,size_t* idx = 0,int base = 10); int stoi (const wstring str,int base = 10);?? ?Convert str

1.字符串转数字

使用C++11引入的C++库函数将string转换为数值类型,相应的库函数申明于头文件中。

名称?? ?原型?? ?说明


stoi?? ?int stoi (const string& str,size_t* idx = 0,int base = 10);


int stoi (const wstring& str,int base = 10);?? ?Convert string to integer (function template )


stol?? ?long stol (const string& str,int base = 10);


long stol (const wstring& str,int base = 10);?? ?Convert string to long int (function template)


stoul?? ?unsigned long stoul (const string& str,int base = 10);


unsigned long stoul (const wstring& str,int base = 10);?? ?Convert string to unsigned integer (function template)


stoll?? ?long long stoll (const string& str,int base = 10);


long long stoll (const wstring& str,int base = 10);?? ?Convert string to long long (function template)


stoull?? ?unsigned long long stoull (const string& str,int base = 10);


unsigned long long stoull (const wstring& str,int base = 10);?? ?Convert string to unsigned long long (function template)


stof?? ?float stof (const string& str,size_t* idx = 0);


float stof (const wstring& str,size_t* idx = 0);?? ?Convert string to float (function template )


stod?? ?double stod (const string& str,size_t* idx = 0);


double stod (const wstring& str,size_t* idx = 0);?? ?Convert string to double (function template )


stold?? ?long double stold (const string& str,size_t* idx = 0);


long double stold (const wstring& str,size_t* idx = 0);?? ?Convert string to long double (function template)


形参说明:?


str:重载了string和wstring版本,表示被转换的字符串。

idx:表示一个size_t*的指针类型,默认为空值。不为空时,转换成功时获取第一个非数值字符的下标。一般情况下,因为它是直接char型指针把最后非数值字符的地址值和起始地址值相减,所以也表示成功转换的字符数量,如”10”转成功为数值10时,*idx的值为2。

base:表示转换基准,默认是10进制。


2.数字转字符串

std命令空间下有一个C++标准库函数std::to_string(),可用于将数值类型转换为string。使用时需要include头文件

函数原型申明如下:

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);


(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读