C++如何将一个字符串中的数据(很多个)分开存入另一个数组中?

字符串是从文件中getline来的。大概格式像这样:122385... 字符串是从文件中getline来的。
大概格式像这样:
12 23 8 5
展开
 我来答
金色潜鸟
推荐于2016-11-07 · TA获得超过3.2万个赞
知道大有可为答主
回答量:1.3万
采纳率:89%
帮助的人:6011万
展开全部
把 string 转 char []; 再用 sscanf() 读出来。(其实,直接用 c 更方便)
程序例子如下:
#include <string>
using namespace std;
#include <stdio.h>

int main()
{
int a[6]; // 存放数据 的 数组
int i,n;
string one_line="12 23 8 5 "; //假定 getline() 已把内容 放入 string class 对象。
char *cstr = new char[one_line.length() + 1]; // 声明一个 char 数组
strcpy(cstr, one_line.c_str()); // 把 string 里的一行字符串,复制到 char 数组
n=sscanf(cstr,"%d %d %d %d",&a[0],&a[1],&a[2],&a[3],&a[4],&a[5]); //转换
for (i=0;i<n;i++) printf("%d\n",a[i]); // 输出成功 转换出来的 n 个数。
return 0;
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式