我修好了.谢谢你的帮助.
我现在看了很多文章,论坛帖子和主题; 但是,没有人真正解决了我的问题.问题是我fopen("file.txt", "w");没有创建文件.
码:
//
//Includes
#include <stdio.h>
int main ()
{
FILE *receipt = fopen("receipt.txt", "w");
//Create file
fprintf(receipt, "Price: %.2f$", purchase);
fprintf(receipt, "\nDiscount: %.2f$", discount);
fprintf(receipt, "\nTax %%: %.2f%%", tax_pct);
fprintf(receipt, "\nTaxes: %.2f$", tax);
fprintf(receipt, "\nTotal Price: %.2f$", end_price);
fprintf(receipt, "\n\nEnd of Receipt.");
fclose(receipt);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
我试过投入
if(!receipt) {
printf("Error!");
}
else {
fprintf(blabla);
}
Run Code Online (Sandbox Code Playgroud)
但无济于事.
它根本不会创建文件:/在Xcode和Mac上运行.没有警告/通知或其他东西让我知道什么是错的.
*我尝试添加system("pwd")以确定是否它没有保存它应该保存它,但我很难找到该目录(我不知道它是否是临时的,但即使如此文件应该在那里?) .显然,我并没有质疑图书馆的实际有效性,呃,暗示fopen我用的是没有给我我期望的东西?
我不能让我发现任何有用的信息.一切似乎都应该起作用; 我只是没有得到一个文件.如果你不想帮忙就不写,请避免再发表任何评论.*
另外,我删除了所有代码,但实际fopen()和fprintf().
唯一有意义的解释是您没有权限在工作目录中创建文件,或者工作目录不是您要查找要创建的文件的位置.
fopen()不工作
嗯,当然有效.你不应该认为标准库不起作用.
没有警告/通知或其他东西让我知道什么是错的.
你打电话后没有检查错误fopen().如果您没有检查错误,您希望如何将它们交付给您?
试试perror.您可能没有权限或类似的东西.
FILE *receipt = fopen("receipt.txt", "w");
if (!receipt)
perror("fopen");
Run Code Online (Sandbox Code Playgroud)