C语言创建文件,文件名可以用变量么?

xiaochun_1999 2010-04-22 01:46:21
请交各位,下面一段程序是创建一个新文件,文件名已经定义好为count.txt
#include <stdio.h>

main(){

FILE *fcount;
fcount=fopen("c:/count.txt","w+");
fclose(fcount);

}
现在我想用变量定义文件名,不知道如何实现。。
谢谢!!!!
...全文
2553 11 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
eTouX 2010-04-22
  • 打赏
  • 举报
回复
可以的,不过用的是一个字符串。也就是一个指向字符的指针作参数
ypb362148418 2010-04-22
  • 打赏
  • 举报
回复
可以输入文件名啊
mtkcpp 2010-04-22
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 xiaochun_1999 的回复:]
非常感谢楼上大兄,程序能够实现外部输入文件名,我有点不明白的而是scanf("%s", fileName+3);
filename+3是什么意思?
[/Quote]

c:// 是四个字符,从fileName[0] ~ fileName[3]
xiaochun_1999 2010-04-22
  • 打赏
  • 举报
回复
谢谢各位,我刚刚试验了一下,不sprintf比较容易实现。
xiaochun_1999 2010-04-22
  • 打赏
  • 举报
回复
谢谢,这个代码我试验过了,确实可以成功,是通过键盘输入文件名称。
但是我想实现的是不是通过键盘输入,而是通过变量赋值。
filename的路径以及名称都是通过变量赋值,可是实现么?
q49442315 2010-04-22
  • 打赏
  • 举报
回复
main(){

FILE *fcount;
char fileName[256];
memset(fileName, '\0', sizeof(fileName));
strcpy(fileName, "c:\\");
printf("please input the fileName:\n");
scanf("%s", fileName+3);
fcount=fopen(fileName, "w+");
fclose(fcount);

}
selooloo 2010-04-22
  • 打赏
  • 举报
回复
简单点的

char *filename="c:\\count.txt";
FILE *fcount;
fcount=fopen(filename,"w+");
feifanup 2010-04-22
  • 打赏
  • 举报
回复
加在 c:\ 后面, 所以+3
xiaochun_1999 2010-04-22
  • 打赏
  • 举报
回复
非常感谢楼上大兄,程序能够实现外部输入文件名,我有点不明白的而是scanf("%s", fileName+3);
filename+3是什么意思?
田暗星 2010-04-22
  • 打赏
  • 举报
回复
main()
{

FILE *fcount;
char fileName[256] = {0};
printf("please input the fileName:\n");
scanf("%s", fileName);//"C:\\OOXX.exe"
fcount=fopen(fileName,"wb");
fclose(fcount);

}
benbshmily 2010-04-22
  • 打赏
  • 举报
回复
main(){

FILE *fcount;
char fileName[256] = {0};
strcpy(fileName, "c:\\");
printf("please input the fileName:\n");
scanf("%s", fileName+3);
fcount=fopen(fileName,"w+");
fclose(fcount);

}

70,022

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧