Buffered C# output
It may happen that even if the C# programs are compiled without errors, there is no program output in the console. The reason can be that while the output of the program is being buffered it is not displayed to the end user immediately. It is difficult to say why this exactly happens, as this can be system- or compiler-specific. However, there is a simple remedy.To unbuffer the output, you will need to flush it with
fflush();function after the buffer is used. On the example of the Granger causality Diks-Wolski codes (you can find them here), find the first occurrence of
printf();function and just flush it right after
printf("Input file (X): "); fflush(stdout);In the example above
stdoutis the standard output buffer. It is the default file descriptor where a program can write its output. The default of the standard output is the screen.