使用fprintf的问题

时间:2016-04-18 00:01:45

标签: c

这是我的文件打开的样子:

FILE* f = fopen(argv[1], "a+");

我从PROGROR_IDENTIFIER环境变量中读取了我想要的值。

char env;
env = getenv("PROCESSOR_IDENTIFIER");
printf("\nA The processor identifier is: %s\n\n", env);

printf打印得很好。现在我想将它附加到我的文件的末尾:

fprintf(f, "%s", env);

但它并没有真正完成这项工作。可能是什么问题?我必须使用循环吗?

1 个答案:

答案 0 :(得分:2)

函数getenv在stdlib.h中定义为char *getenv(const char *name);,同时确保在写入文件之前检查getenv是否成功找到环境变量:

char *env;
env = getenv("PROCESSOR_IDENTIFIER");
if (env != NULL) {
    printf("\nA The processor identifier is: %s\n", env);

    fprintf(f, "%s", env);
}