我正在使用linux manjaro。我有以下代码(cons.c)
#include <stdio.h>
#include <stdlib.h>
int main()
{
FILE *f=freopen("/dev/null", "a", stdout); //redirect stdout to /dev/null
FILE *g=freopen ("/dev/tty", "a", stdout); // redirect stdout back to console
printf("%p %p\n",f,g);
return 1;
}
我执行了以下操作并得到了预期的结果
[tom@sp4 src]$ gcc -g cons.c -o cons
[tom@sp4 src]$ ./cons
0x7f19897b7520 0x7f19897b7520
当我在底线设置断点并使用 VS Code 交互式调试器进行调试时,g 返回 null 并且 printf 什么也不做。