当前位置: 技术问答>linux和unix
输出重定向的问题:为什么输出到文件的东西不对?
来源: 互联网 发布时间:2014-12-27
本文导语: 运行程序,把输出重定向到文件中,但是好像好多东西都被重复输出了,和输出在stdout不一样,找不到规律。这是为什么? | 试一试这个 #include #include main() { int i; printf("tpidtppidtpgidn"); ...
运行程序,把输出重定向到文件中,但是好像好多东西都被重复输出了,和输出在stdout不一样,找不到规律。这是为什么?
|
试一试这个
#include
#include
main()
{
int i;
printf("tpidtppidtpgidn");
printf("t%d,t%d,t%dn",
getpid(),getppid(),getpgid(0));
for(i=1;i0)
{
printf("i=%d:t%d,t%d,t%dn",
i,getpid(),getppid(),getpgid(0));
exit(0);
}
}
}
#include
#include
main()
{
int i;
printf("tpidtppidtpgidn");
printf("t%d,t%d,t%dn",
getpid(),getppid(),getpgid(0));
for(i=1;i0)
{
printf("i=%d:t%d,t%d,t%dn",
i,getpid(),getppid(),getpgid(0));
exit(0);
}
}
}
|
这个问题我遇到过,没猜错的话,应该是前面一句被重复打印了。主要是由于缓冲的问题,这个问题可以在一本叫做“LINUX上的C语言编程”的书上查到。你可以去找这本书看一下。
|
建议你设定断点测试,这样更加容易发现问题解决问题。
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。