磁盘里面有一群以逗号分隔的数据,现在从磁盘里面读出并显示到屏幕上。
#include<iostream>
#include<stdio.h>
#include<malloc.h>
#include <stdlib.h>
#include <string>
#include <string.h>
#include<fstream>
using namespace std;
int main()
{
string filename;
char str[50];
double ad[100]={0};
int index=0,j=0,i=0;//用于索引
char ch;
ifstream infile;
cout<<"请输入要读入的文件的名字(以回结束【绝对路径有效】):"<<endl;
getline(cin,filename,'\n');
infile.open(filename);
if(!infile){
cerr<<"打开文件失败!。。"<<endl;
return 1;
}
do{
double d=0.0;
infile.read(&ch,1);//参数1是接受字符的指针,参数2是接受的字符的个数
str[j++]=ch;
if(ch==','||ch=='\n'||infile.eof()){
str[j-1]='\0';
d=atof(str);//将字符串转换成double类型的数字
ad[i++]=d;
index++;
memset(str,0,sizeof(str));
j=0;
continue;
}
}while(!infile.eof());//当到达文件结尾
infile.close();
i=0;
while(index){
printf("%lf ",ad[i++]);
index--;
}
return 0;
}