if(freopen("e:\\lstm-comparec\\lstm\\lstm\\output.txt","a",stdout)==NULL)
fprintf(stderr,"errorredirectingstdout\n");
fclose(stdout);
重新打开:
windows:
freopen("CON", "w", stdout);
linux
freopen("/dev/stdout","w",stdout);
在ecplise下使用cdt开发c程序,发现运行后终端没有输出,停止后会输出,通过在main中添加
setbuf(stdout,NULL);
解决问题,原来是因为默认输出流存在buffer机制,通过上面语句, 取消buffer
fflush(stdout);