嗨,我有一个问题,我不知道如何使用stdio.h库中的stderr和 string.h中的fprintf()。例如我有这个:
fprintf(stderr, "Error en planta de Centro: %d\n", numeroPlantas);
其中 numberPlants 是一个int。如果可能,我希望您澄清它们通常何时使用以及它们的含义。
嗨,我有一个问题,我不知道如何使用stdio.h库中的stderr和 string.h中的fprintf()。例如我有这个:
fprintf(stderr, "Error en planta de Centro: %d\n", numeroPlantas);
其中 numberPlants 是一个int。如果可能,我希望您澄清它们通常何时使用以及它们的含义。
fprint我认为你知道这一点不会有问题,它允许将 printf 的输出写入任何文件。
stderr是一种打印错误的方法, stderr 包含用户想要报告的可能错误。
这是西班牙语的文档
举个例子:
它有作为输出:
当你运行一个程序时,你在控制台上看到的输出通常是 stdout 和 stderr 的组合。但是可以将两个输出重定向到不同的文件。
因此,如果您运行“./myprogram 1>log 2>errorLog”,您将在错误日志中而不是在日志中获得打印到 stderr 的所有内容。这是假设操作系统将 0 与 stdin 关联,1 与 stdout 关联,2 与 stderr 关联,这是正常的。