为何有的打印了,有的没有打印

为什么有的打印了,有的没有打印?
我有个程序,在某个端口接受tcp请求。

我用 test  2>temp.txt  执行我的程序,在程序 中,
。。。。
fprintf(stderr, "aaaaa");
。。。。
fprintf(stderr, "bbbbb");

发现 "aaaaa"  打印到了temp.txt中,但是"bbbbb"  却没有打印出来,我可以肯定执行了fprintf(stderr, "bbbbb"),但为什么没有打印出来呢,这中间发生了什么?怎么去定位呢?

急等!谢谢!
------解决思路----------------------
贴代码。。。。。。
------解决思路----------------------
1. 打印到文件的同时打印到控制止台, 确认代码 执行到.
2. 文件是否正常关闭,或者刷新, 因为输出文件是有缓存的, 只有当一定条件, 这些数据才会真正写入到文件中.  比如缓冲区满, 主动刷新, 或者文件被关闭.
------解决思路----------------------
在每个不带末尾\n的fprintf(stderr,"...");后面加
fflush(stderr);