c语言string转int,c语言如何从int转字符串

首页 > 教育培训 > 作者:YD1662023-06-18 16:50:15

使用函数

int转string

//c 11标准增加了全局函数std::to_string: #include<iostream> int main() { int num = 123; std::string str = std::to_string(num); std::cout << str << std::endl; return 0; } 输出: 123

string转int

//可以使用std::stoi/stol/stoll等等函数 //分别对应int、long,long long //转化的字符串中开头第一个必须是数字 #include<iostream> int main() { std::string str = "123"; //方法1: atoi (c函数) int num = atoi(str.c_str()); //用str.c_str()先转为char* std::cout << num << std::endl; //方法2: stoi (c 函数) int num = std::stoi(str); std::cout << num << std::endl; str = "1234 abcd"; num = std::stoi(str); std::cout << num << std::endl; return 0; } 输出: 123 123 1234 //只会输出1234使用流

int转string

#include<iostream> #include<sstream> std::string i_to_string(int num) { std::stringstream stream; stream << num; return stream.str(); } int main() { std::string str("hello"); str = i_to_string(123); std::cout << str << std::endl;; return 0; } 输出: hello123使用ASCII码

string转int

#include<iostream> #include<sstream> int main() { std::string s("1234"); std::string::const_iterator iter = s.begin(); int res = 0; int base = 10; //10进制基底 while(iter != s.end()){ res = res * base ( (*iter ) - '0'); } std::cout << res << std::endl; return 0; } 输出: 1234

int转string

#include<iostream> #include<sstream> int main() { int num = 1234; std::string res; do { int temp = num % 10; res = temp '0'; num /= 10; } while(num != 0);//倒着拼接 //倒着输出(rbgin,rend) for (std::string::const_reverse_iterator it = res.rbegin(); it != res.rend(); it) { std::cout << *it; } return 0; } 输出: 1234

栏目热文

文档排行

本站推荐

Copyright © 2018 - 2021 www.yd166.com., All Rights Reserved.