(由用户操作)在C语言中输入一个文件名之后打开该文件,请问应该怎么编写?
来源:百度知道 编辑:UC知道 时间:2024/05/23 11:36:57
应该是关于fopen的问题吧?应该怎么编写?
main()
{
FILE *f;
char a[50],*fp;
printf("请输入你要打开的文章:");
getchar();
gets(a);
fp=a;
if((f=fopen("*fp","r"))==NULL)printf("error\n");
}
注意fopen后面,请问怎么做才可以读入字符串a上面的字母作为要读取的文件名呢?
main()
{
FILE *f;
char a[50],*fp;
printf("请输入你要打开的文章:");
getchar();
gets(a);
fp=a;
if((f=fopen("*fp","r"))==NULL)printf("error\n");
}
注意fopen后面,请问怎么做才可以读入字符串a上面的字母作为要读取的文件名呢?
#include <iostream.h>
#include <fstream.h>
#include <stdlib.h>
int main(int argc,char *argv[])
{void setfilename(char * dest,char * src,int i);
char filename[100];
if(argc==1)
{cerr<<"命令不对"<<endl;
exit(1);}
if(argc==2)
//以下为分割文件代码
{int count=1,disksize=2048*705,disknum;
fstream f2(argv[1],ios::in|ios::binary); //打开要分割的文件
if(f2.fail()) exit(1); //打开失败则退出
f2.seekg(0,ios::end);
streampos pos2=f2.tellp();
f2.seekg(0,ios::beg);
disknum=pos2/disksize;
if(!disknum) exit(0);
//如果文件小于一张磁盘容量则退出
if(pos2%disksize) disknum=disknum+1;
for(int b=1;b<disknum+1;b++)
{int y;
setfilename(filename,argv[1],b);
//调用建立文件名函数
fstream f1(filename,ios::out|ios::binary);
//建立新文件