21xrx.com
2024-12-22 21:38:27 Sunday
登录
文章检索 我的文章 写文章
C++中字符串转数字的方法
2023-07-08 06:38:48 深夜i     --     --
C++ 字符串 转换 数字 方法

在C++中,将字符串转换成数字是一个常见的需求,本文将为您介绍几种方法。

1. atoi()

atoi()函数可以将一个字符串转换成一个整数,该函数定义在stdlib.h头文件中,在使用之前需要先引入该头文件。示例代码如下:


#include <stdlib.h>

#include <iostream>

using namespace std;

int main() {

 char buf[] = "123";

 int intValue = atoi(buf);

 cout << intValue << endl;

 return 0;

}

注:需要注意的是,atoi()函数的输入必须是一个以null结尾的字符串,否则会导致程序崩溃。

2. stringstream

stringstream是一个C++标准库中的类,在头文件 中定义。这个类可以把一个字符串流转换成一个数字。示例代码如下:


#include <sstream>

#include <iostream>

using namespace std;

int main() {

 string strValue = "456";

 int intValue = 0;

 stringstream ss(strValue);

 ss >> intValue;

 cout << intValue << endl;

 return 0;

}

注:需要注意的是,使用stringstream时需要引入头文件 ,以及string类型的头文件

3. std::stoi()

std::stoi()函数可以将一个字符串转换成一个整数,该函数定义在string头文件中,在使用之前需要先引入该头文件。示例代码如下:


#include <iostream>

#include <string>

using namespace std;

int main() {

 string strValue = "789";

 int intValue = stoi(strValue);

 cout << intValue << endl;

 return 0;

}

注:需要注意的是,使用std::stoi()函数时需要引入头文件

总结一下,以上就是C++中字符串转数字的几种方法。无论哪种方法,在实际应用中需要根据不同场景进行选用。如果要将一个字符串转换成整数或浮点数,建议使用stringstream,因为使用stringstream可以更方便地实现类型转换,并且支持更多类型的转换;如果只是将一个字符串转换成整数,可以使用atoi()或std::stoi()函数。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复