写在文本文件中

Mr *_*rte 1 c printf file text-files

所以,我有这个代码:

#include <stdio.h>


  int main(int argc, char *argv[]){
        FILE *ReadFile, *WriteFile;
        float key;
        int quantKeys,T;

        int i;

        /* errors verification */

        if (argc < 3){
            printf(" Use the correct entry parameters.\n");
            exit(1);
        }

        if((ReadFile = fopen(argv[1],"rw")) == NULL){
            printf("Error when trying to open the file\n");
            exit(1);
        }

        if((WriteFile = fopen(argv[2],"rw")) == NULL){
            printf("Error when trying to open the file.\n");
            exit(1);
        }

        /* main code */

        quantKeys = 45658;
        T = 5;

        fprintf(WriteFile,"%d",T);
        fprintf(WriteFile,"%d",quantKeys);
        fclose(ReadFile);
        fclose(WriteFile);

    return 0;
    }
Run Code Online (Sandbox Code Playgroud)

我想要做的就是在文本文件中写入变量"quantChaves"和"T",我将其作为main函数的第三个参数传递.它编译并运行没有问题,但我的文本文件在运行后保持为空.我做错了什么?

Mik*_*cup 6

rw不是有效的模式fopen.如果您想写点什么,就可以使用w,w+,r+,或a+.完整的详细信息在您的man页面或此处.

差异的要点:

w 不允许阅读

r+ 如果不存在,则不会创建新文件

a+ 附加文本而不是覆盖文件内容.