0

什么是 C/C++ 命令,用于在某个目录中使用从键盘读取的某个变量的名称创建文件?例如:先前从键盘读取的名称为 John 的文本文件,程序将创建文件 John.txt

4

2 回答 2

0

C方式:(FILE* f = fopen(filename,"w");假设您要写入它,否则第二个参数是“r”。)

C++方式:(std::fstream f(filename,std::ios::out);假设你想写,读它是std::ios::in)

此外,在提出此类问题之前,请尝试搜索 C/C++ 文档。下次看看这个网站。

于 2013-09-05T13:02:13.557 回答
0

只需执行类似的操作,在此示例中,我使用键盘询问文件名,然后使用创建文件fopen并将其传递给用户编写的文件名。

#include <stdio.h>
#include <string.h>

int main(){
   FILE *f;
   char filename[40], path[255];
   strcpy(path,"folder/path/"); //copies the folder path into the variable

   printf("Insert your filename\n");
   scanf("%s",&filename);

   strcpy(path,filename);
   f = fopen(path,'w'); //w is for writing permission   

   //Your operations
   fclose(f);
   return 0;
}

这是另一个使用 POO 的示例,它更适合 C++:

#include <iostream>
#include <fstream>

using namespace std;

int main () {
  string path = "my path";
  string filename;

  cout << "Insert your filename" << endl;
  cin >> filename;
  path = path + filename;

  ofstream f; 
  f.open (path.c_str()); //Here is your created file

  //Your operations
  f.close();
  return 0;
}

PD:这个例子使用了 Unix 的路径。

于 2013-09-05T13:02:46.233 回答