c++ string分割 转int
时间: 2023-05-02 10:06:30 浏览: 151
C++中的字符串分割和转换可以通过使用一些字符串处理函数来完成。字符串分割的过程可用strtok函数实现。strtok函数可以将一个字符串按照指定的分隔符分割成若干个子字符串,然后再对每个子字符串进行处理。例如,可以将每个子字符串转换成int类型。
以下是一个简单的示例程序,演示如何使用strtok函数将字符串分割成若干个数字,并将这些数字转换成int类型:
```c++
#include <iostream>
#include <cstring>
using namespace std;
int main()
{
char str[] = "123,456,789";
const char *delim = ",";
char *token = strtok(str, delim);
int sum = 0;
while(token != nullptr)
{
int num = atoi(token);
sum += num;
token = strtok(nullptr, delim);
}
cout << "sum = " << sum << endl;
return 0;
}
```
在上面的程序中,首先使用strtok函数将字符串"123,456,789"按照","分割成若干个子字符串,然后使用atoi函数将每个子字符串转换成int类型。最后,将这些int类型的数字相加得到总和。输出结果为:
```
sum = 1368
```
总之,字符串分割和转换可以通过使用一些实用的字符串处理函数来完成。这些函数包括strtok、atoi、atof、to_string等等。在实际开发中,应根据具体情况选择合适的函数,以达到最佳效果。
阅读全文