c++,怎样将函数的结果输出到TXT文件中?
4个回答
展开全部
两个办法,一个是dos命令
就是如你的程序名字叫a.exe
那么在dos窗口下,a.exe目录下输入命令
a.exe >>b.txt
这个>>就是dos中的数据流管道,把输入到屏幕的数据,改道到文件中
另一个就是在程序中写入代码
定义文件指针
FILE *fp;
打开文件,这个是固定格式,
if(fp=fopen("文件路径+文件名",“写入方式”)==NULL)
{
printf("error");
exit (0);
}
在用命令写入就好了
fputs(fp,)
fprintf(fp,)
等函数
最后一定要关闭函数指针
fclose(fp);
就是如你的程序名字叫a.exe
那么在dos窗口下,a.exe目录下输入命令
a.exe >>b.txt
这个>>就是dos中的数据流管道,把输入到屏幕的数据,改道到文件中
另一个就是在程序中写入代码
定义文件指针
FILE *fp;
打开文件,这个是固定格式,
if(fp=fopen("文件路径+文件名",“写入方式”)==NULL)
{
printf("error");
exit (0);
}
在用命令写入就好了
fputs(fp,)
fprintf(fp,)
等函数
最后一定要关闭函数指针
fclose(fp);
追问
您好,感谢您的回答
我的意思是我用void声明了一个函数,想把这个函数输出的东西输出到制定的TXT文档中
比如
void asdf(int b)
{
cin>>b;
cout<<"asdf"<<b<<endl;
}
这样的话能实现么 也就是在txt文档中输出asdf和用户输入的b
追答
fprintf(fp,)
这个函数可以实现
http://baike.baidu.com/view/656682.htm
这是用法
你这个可以用
fprintf(fp,"asdf %d",b);
展开全部
#include "fstream.h"
struct student
{
char name[20];
int num;
int age;
char sex;
};
int main()
{
student stud[3]={"Li",1001,18,'f',"Fun",1002,19,'m',"Wang",1004,17,'f'};
ofstream outfile("stud.txt",ios::binary);
if(!outfile)
{
cerr<<"open error!"<<endl;
return 0;
}
for(int i=0;i<3;i++)
outfile.write((char *)&stud[i],sizeof(stud[i]));//写数据到文件中
outfile.close();//关闭流
ifstream infile("stud.dat",ios::binary);//下面是 从 文件中读数据出来。
if(!infile)
{
cerr<<"open error!"<<endl;
return 0;
}
for(int j=0;j<3;j++)
infile.read((char *)&stud[j],sizeof(stud[j]));
for (int k=0;k<3;k++)
{
cout<<"NO."<<k+1<<endl;
cout<<"name:"<<stud[k].name<<endl;
cout<<"num:"<<stud[k].num<<endl;
cout<<"age:"<<stud[k].age<<endl;
cout<<"sex:"<<stud[k].sex<<endl;
}
return 0;
}
struct student
{
char name[20];
int num;
int age;
char sex;
};
int main()
{
student stud[3]={"Li",1001,18,'f',"Fun",1002,19,'m',"Wang",1004,17,'f'};
ofstream outfile("stud.txt",ios::binary);
if(!outfile)
{
cerr<<"open error!"<<endl;
return 0;
}
for(int i=0;i<3;i++)
outfile.write((char *)&stud[i],sizeof(stud[i]));//写数据到文件中
outfile.close();//关闭流
ifstream infile("stud.dat",ios::binary);//下面是 从 文件中读数据出来。
if(!infile)
{
cerr<<"open error!"<<endl;
return 0;
}
for(int j=0;j<3;j++)
infile.read((char *)&stud[j],sizeof(stud[j]));
for (int k=0;k<3;k++)
{
cout<<"NO."<<k+1<<endl;
cout<<"name:"<<stud[k].name<<endl;
cout<<"num:"<<stud[k].num<<endl;
cout<<"age:"<<stud[k].age<<endl;
cout<<"sex:"<<stud[k].sex<<endl;
}
return 0;
}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用 CStdioFile 类!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询