C 找不到二进制文件
程序没有显示错误或警告,但唯一的问题是我找不到保存数据的“.bin”文件。 C文件保存在我的Windows桌面上,但当我编译它时,仍然找不到bin文件C 找不到二进制文件,c,binaryfiles,C,Binaryfiles,程序没有显示错误或警告,但唯一的问题是我找不到保存数据的“.bin”文件。 C文件保存在我的Windows桌面上,但当我编译它时,仍然找不到bin文件 #include<stdio.h> int main(){ FILE *bfile; int i; bfile=fopen("bfile.bin","bw"); for(i=2;i<=500;i+=2) fwrite(i, sizeof(int),1,bfile); } #包括 int main(){ 文件*b文
#include<stdio.h>
int main(){
FILE *bfile;
int i;
bfile=fopen("bfile.bin","bw");
for(i=2;i<=500;i+=2)
fwrite(i, sizeof(int),1,bfile);
}
#包括
int main(){
文件*b文件;
int i;
bfile=fopen(“bfile.bin”,“bw”);
对于(i=2;i2个问题;1)b标志需要在w之后
fopen("bfile.bin","wb")
2)fwrite取一个指针,将i改为&i
fwrite(&i,sizeof(int),1,bfile);
实际上,根据“man fopen”的说法,b在POSIX上被忽略。编译它将没有效果。你需要运行它。这个程序将在当前工作目录中创建bfile.bin
,即你运行可执行文件时所在的目录。我运行了它,但仍然找不到该文件。你能在你的计算机上运行它吗le将由main()中的隐式exit()
关闭
正在返回。这样做不好,但文件将被关闭,挂起的输出将被刷新。代码不会检查文件是否已打开,但如果未打开,则可能会崩溃。短期内最好尝试使用绝对路径名创建文件。我希望文件是以某种特殊方式创建的从中运行可执行文件的目录。指针捕捉得很好。有趣的是OP的原始代码没有与缺少的&