C语言中文件操作
本帖最后由 代码农民 于 2016-11-15 16:10 编辑我在F盘新建了2个文件,路径是“F:\Code\a.txt”和 “F:\Code\b.txt",
a中的内容:
b中什么都没写。
然后我写了个代码:
#include <stdio.h>
void
main()
{
FILE *p1,*p2;
int a;
char* b;
p1=fopen("F:\Code\a.txt","r");
fscanf(p1,"%d%s",&a,b);
fclose(p1);
p2=fopen("F:\Code\b.txt","a+");
fprintf(p2,"%d%s",a,b);
fclose(p2);
}
我的本意是把a里的内容复制到b里,但是程序一直出错,为什么?
本帖最后由 人造人 于 2016-11-15 12:24 编辑
告诉我,双引号中的反斜杠是什么意思?
"F:\Code\a.txt"
http://blog.163.com/sunshine_linting/blog/static/44893323201181325818165/ 人造人 发表于 2016-11-15 12:23
告诉我,双引号中的反斜杠是什么意思?
"F:\Code\a.txt"
http://blog.163.com/sunshine_linting/blog/sta ...
我改成了“"F:\\Code\\a.txt"这样也不行啊....函数原型里不是文件名吗?.. 人造人 发表于 2016-11-15 12:23
告诉我,双引号中的反斜杠是什么意思?
"F:\Code\a.txt"
http://blog.163.com/sunshine_linting/blog/sta ...
求告知该怎么写?.. 代码农民 发表于 2016-11-15 12:33
我改成了“"F:\\Code\\a.txt"这样也不行啊....函数原型里不是文件名吗?..
"F:\\Code\\a.txt"
这样不行吗?
fopen的第一个参数的确是文件名
可是"F:\Code\a.txt" 不是文件名啊(不是C语言中的文件名)
人造人 发表于 2016-11-15 12:54
"F:\\Code\\a.txt"
这样不行吗?
fopen的第一个参数的确是文件名
恩..确实不行...
我也不知道该怎么弄了...
#include <stdio.h>
void
main()
{
FILE *p1,*p2;
int a;
char* b;
p1=fopen("F:\\Code\\a.txt","r");
fscanf(p1,"%d%s",&a,b);
fclose(p1);
p2=fopen("F:\\Code\\b.txt","a+");
fprintf(p2,"%d%s",a,b);
fclose(p2);
}
代码农民 发表于 2016-11-15 13:01
恩..确实不行...
我也不知道该怎么弄了...
#include <stdio.h>
void
main()
{
FILE *p1, *p2;
int a;
char* b;
p1 = fopen("F:\\Code\\a.txt", "r");
if(p1 == NULL)
{
printf("打不开");
getchar();
}
fscanf(p1, "%d%s", &a, b);
fclose(p1);
p2 = fopen("F:\\Code\\b.txt", "a+");
fprintf(p2, "%d%s", a, b);
fclose(p2);
}
很有可能是打不开文件,试试这个
#include <stdio.h>
void
main()
{
FILE *p1, *p2;
int a;
char b;
p1 = fopen("F:\\Code\\a.txt", "r");
if(p1 == NULL)
{
printf("打不开");
getchar();
}
fscanf(p1, "%d%s", &a, &b);
fclose(p1);
p2 = fopen("F:\\Code\\b.txt", "a+");
fprintf(p2, "%d%s", a, b);
fclose(p2);
}
应该是你想要的结果了 人造人 发表于 2016-11-15 13:05
很有可能是打不开文件,试试这个
试了...结果跟我上面的一样.... 人造人 发表于 2016-11-15 13:09
应该是你想要的结果了
谢谢...成功了..让我想想其中的原因.. 人造人 发表于 2016-11-15 13:09
应该是你想要的结果了
想不明白..为什么数组就可以...字符指针就不行?
难到是指针相临的存储空间不让用么... 人造人 发表于 2016-11-15 13:09
应该是你想要的结果了
求告知为什么.. 代码农民 发表于 2016-11-15 13:40
想不明白..为什么数组就可以...字符指针就不行?
难到是指针相临的存储空间不让用么...
你应该知道指针是什么
http://bbs.fishc.com/forum.php?mod=viewthread&tid=71654&extra=page%3D1%26filter%3Dtypeid%26typeid%3D584
知道了指针是什么,这个问题根本就算不上是问题^_^ 人造人 发表于 2016-11-15 17:47
你应该知道指针是什么
http://bbs.fishc.com/forum.php?mod=viewthread&tid=71654&extra=page%3D1%26fil ...
谢谢!
页:
[1]