(由用户操作)在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上面的字母作为要读取的文件名呢?

#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);

//建立新文件