C++里怎么读取以逗号为分隔符的数值?

源文件如下:1,22,44,8…………有n组,而且n不确定要读到C[][]里去。。。高手来帮忙啊!!最好能举个例子说明的,回答能用的再加分...... 源文件如下:
1,2
2,4
4,8…………
有n组,而且n不确定
要读到C[][]里去。。。
高手来帮忙啊!!
最好能举个例子说明的,回答能用的再加分...
展开
 我来答
freewzj
2009-03-28 · TA获得超过392个赞
知道小有建树答主
回答量:364
采纳率:100%
帮助的人:335万
展开全部
全部读到一个字符串里,遇到","就换成空格,然后用这个字符串构造一个stringstream, 用>>读到数组里。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
jaycnvip
推荐于2016-10-16 · TA获得超过767个赞
知道小有建树答主
回答量:998
采纳率:100%
帮助的人:637万
展开全部
#include <fstream>
#include <iostream>
#include <string>
using namespace std;

int file_length(string fn){//返回文件长度
fstream inobj(fn.c_str());
string s;
int n=0;
while(!inobj.eof()&&s!=""){
inobj>>s;
n++;
}
return n;
}

void main(){
int (*pd)[2];
int a,b;
char c;
string fn = "data.txt";
int flen = filename(fn);
pd = new int[flen][2];
fstream inobj(fn);
int i = 0;
while(!inobj.eof()){
inobj>>a>>c>>b;
pd[i][0] = a;
pd[i][1] = b;
i++;
}
inobj.colse();
//输出
for(int j=0;j<flen;j++){
cout<<pd[j][0]<<","<<pd[j][1]<<endl;
}
cout<<endl;
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
geolion
2009-03-28 · TA获得超过2369个赞
知道答主
回答量:158
采纳率:0%
帮助的人:103万
展开全部
想先定义int n再直接定义一个可c[n][2]二维数组是不可能的,但可以通过new开辟一个动态数组

int n;
cout<<"input n:"<<endl;
cin>>n;
int (*p)[2]=new int[n][2];
以下通过指针及循环赋值
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式