私は次のコードを書きました:
int fd = _dup(fileno(stdout));
FILE* tmp = freopen("tmp","w+",stdout);
HANDLE out = GetStdHandle(STD_OUTPUT_HANDLE);
if (out == INVALID_HANDLE_VALUE){
//error
}
else if (out == NULL) {
//error
}
else {
WriteFile(out, "num", sizeof("num"), NULL, NULL);
}
最後の行で、アサーション " Unhandled exception...:Access violation writing location 0x000000
" が得られます。何が問題で、その修正方法は?
ありがとうございました。
PS: プロジェクトの制限により、freopen を使用できません