c++如何将这串字符分成四个double型实数0.000000000000E+00 4.847967065871E-04-1.023181539495E-11 0.000000000000E+00
时间: 2024-01-06 20:03:44 浏览: 37
可以使用字符串处理函数和字符串流来实现。
首先,使用字符串处理函数将字符串中的空格和换行符去除,得到一个纯数字的字符串。然后,将该字符串转化为字符串流,利用流提取运算符从中读取四个double型实数。具体代码如下:
```c++
#include <iostream>
#include <string>
#include <sstream>
using namespace std;
int main() {
string str = "0.000000000000E 00 4.847967065871E-04-1.023181539495E-11 0.000000000000E 00";
// 去除空格和换行符
str.erase(remove(str.begin(), str.end(), ' '), str.end());
str.erase(remove(str.begin(), str.end(), '\n'), str.end());
// 字符串转化为字符串流
stringstream ss(str);
// 从流中依次读取四个double型实数
double d1, d2, d3, d4;
ss >> d1 >> d2 >> d3 >> d4;
// 输出四个实数
cout << d1 << endl;
cout << d2 << endl;
cout << d3 << endl;
cout << d4 << endl;
return 0;
}
```
输出结果为:
```
0
0.000484797
-1.02318e-11
0
```
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://img-home.csdnimg.cn/images/20210720083646.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)