Assuming your program is called from a Command Prompt, stderr and stdout are by default directed to the console.
If you want to save them to a file, you must redirect the output.
STDOUT:
c:\path\program.exe >c:\temp\stdout.log
STDERR:
c:\path\program.exe 2>c:\temp\stderr.log
STDOUT and STDERR in different files
c:\path\program.exe >c:\temp\stdout.log 2>c:\temp\stderr.log
STDOUT and STDERR in the same file
c:\path\program.exe >c:\temp\stdout.log 2>&1
If you want to add to an existing log file instead of overwriting the content, use ">>" instead of ">". If the logfile does not exist, it will be create in both cases.
Edit:
You edited your question with more details after my initial answer.
So the new answer would be: no, they are not stored automatically. You must explicitly redirect the output streams to a file if you want to.