标题: 怎么看不到 printf() 的输出?
changrui8210
新生入学
Rank: 1
注册用户



UID 88425
精华 1
积分 0(积分有什么用?)
帖子 7
阅读权限 10
注册 2004-6-22
状态 离线
发表于 2005-4-20 18:47  资料  个人空间  短消息  加为好友 
怎么看不到 printf() 的输出?

有下面一个简单程序:
`:xh l8SXBnmain()
!H.\1x#H|{ t
RIWL(g@6_c4M

int i;
-X
I;M9U5lZ$IvLinux伊甸园论坛
for(i=0;i<500;i++) @Y-H(eK k
{
#Fr*b3K]Aprintf("hello");
)R'p!?5D4hm/w'DLinux伊甸园论坛sleep(1);
,@ u@1J!K-aEwww.linuxeden.com} ;cD3~d V
} Linux伊甸园论坛{"l^O4t/?X4hCl5j9cT
编译后执行,终端上什么也不输出,只有光标闪动
H-a3\[&O!?_wwww.linuxeden.com而去掉sleep(),程序很快就输出完500个hello.怎么回事呀??

顶部
不容错过的IBM 集群技术资源汇总
dearvoid
版主
Rank: 7Rank: 7Rank: 7
Clark J. Wang



UID 26605
精华 26
积分 63(积分有什么用?)
帖子 4816
阅读权限 100
注册 2002-10-12
来自 Beijing, China
状态 在线
发表于 2005-4-20 20:07  资料  个人空间  短消息  加为好友 
try like this:

main()
{   
    int i;
    for(i=0;i<[color=red]5[/color];i++)
    {   
        printf("hello");
        sleep(1);
    }
}






'
◆ 发帖时请【突出主题】, 以便您的问题能够及时得到回复
◆ 发帖时请将您的【代码】或者【脚本】写在 [code] 和 [/code] 中间
顶部
不容错过的IBM 集群技术资源汇总
dearvoid
版主
Rank: 7Rank: 7Rank: 7
Clark J. Wang



UID 26605
精华 26
积分 63(积分有什么用?)
帖子 4816
阅读权限 100
注册 2002-10-12
来自 Beijing, China
状态 在线
发表于 2005-4-20 20:10  资料  个人空间  短消息  加为好友 
or try like this:

main()
{   
    int i;
    for(i=0;i<500;i++)
    {   
        printf("hello[color=red]\n[/color]");
        sleep(1);
    }
}






'
◆ 发帖时请【突出主题】, 以便您的问题能够及时得到回复
◆ 发帖时请将您的【代码】或者【脚本】写在 [code] 和 [/code] 中间
顶部
dearvoid
版主
Rank: 7Rank: 7Rank: 7
Clark J. Wang



UID 26605
精华 26
积分 63(积分有什么用?)
帖子 4816
阅读权限 100
注册 2002-10-12
来自 Beijing, China
状态 在线
发表于 2005-4-20 20:16  资料  个人空间  短消息  加为好友 
or try like this:

#include <stdio.h>

main()
{   
    int i;
    for(i=0;i<500;i++)
    {   
        printf("hello");
        [color=red]fflush(stdout);[/color]
        sleep(1);
    }
}






'
◆ 发帖时请【突出主题】, 以便您的问题能够及时得到回复
◆ 发帖时请将您的【代码】或者【脚本】写在 [code] 和 [/code] 中间
顶部
zxyjoseph
新生入学
Rank: 1
注册用户



UID 87293
精华 0
积分 0(积分有什么用?)
帖子 12
阅读权限 10
注册 2004-6-7
来自 宁夏
状态 离线
发表于 2005-4-21 09:27  资料  个人空间  短消息  加为好友 


main()
{
int i;
for(i=0;i<5;i++)
{
printf("hello\n");
sleep(5);
}
}


顶部
changrui8210
新生入学
Rank: 1
注册用户



UID 88425
精华 1
积分 0(积分有什么用?)
帖子 7
阅读权限 10
注册 2004-6-22
状态 离线
发表于 2005-4-21 11:48  资料  个人空间  短消息  加为好友 
为什么要换行呢?

我自己想到把i改为3试过,是三秒后一次输出了j
M2r&~s-r"PWL,Q;V

换行是什么道理呢

顶部
不容错过的IBM 集群技术资源汇总
dearvoid
版主
Rank: 7Rank: 7Rank: 7
Clark J. Wang



UID 26605
精华 26
积分 63(积分有什么用?)
帖子 4816
阅读权限 100
注册 2002-10-12
来自 Beijing, China
状态 在线
发表于 2005-4-21 12:38  资料  个人空间  短消息  加为好友 
stdout is line buffered





'
◆ 发帖时请【突出主题】, 以便您的问题能够及时得到回复
◆ 发帖时请将您的【代码】或者【脚本】写在 [code] 和 [/code] 中间
顶部
不容错过的IBM 集群技术资源汇总
CoolIORI
小试牛刀
Rank: 2
注册用户



UID 42205
精华 0
积分 0(积分有什么用?)
帖子 65
阅读权限 10
注册 2003-4-17
状态 离线
发表于 2006-12-26 18:40  资料  个人空间  短消息  加为好友 
还不是很清楚  哪个能更进一步解释一下啊





forever love forever linux
顶部
不容错过的IBM 集群技术资源汇总
xcch
新生入学
Rank: 1
注册用户



UID 178850
精华 0
积分 0(积分有什么用?)
帖子 9
阅读权限 10
注册 2007-1-12
状态 离线
发表于 2007-1-12 01:25  资料  个人空间  短消息  加为好友 
这个不应该吧,虽说标准输出是行缓冲的,这个行长度不会太长吧,用不了五百次应该可以在行溢出的情况下输出的吧至于有没有sleep()个人觉得没有关系,请高手指点

顶部
不容错过的IBM 集群技术资源汇总
dearvoid
版主
Rank: 7Rank: 7Rank: 7
Clark J. Wang



UID 26605
精华 26
积分 63(积分有什么用?)
帖子 4816
阅读权限 100
注册 2002-10-12
来自 Beijing, China
状态 在线
发表于 2007-1-12 11:34  资料  个人空间  短消息  加为好友 
[QUOTE=xcch]这个不应该吧,虽说标准输出是行缓冲的,这个行长度不会太长吧,用不了五百次应该可以在行溢出的情况下输出的吧至于有没有sleep()个人觉得没有关系,请高手指点[/QUOTE]0?Sj#S;f5?$AI
不知道你所说的 sleep 是指几楼的 sleep?





'
◆ 发帖时请【突出主题】, 以便您的问题能够及时得到回复
◆ 发帖时请将您的【代码】或者【脚本】写在 [code] 和 [/code] 中间
顶部
 



当前时区 GMT+8, 现在时间是 2008-5-17 10:20

    Powered by Discuz! 5.5.0  © 2001-2007 Comsenz Inc.
Processed in 0.151730 second(s), 5 queries

清除 Cookies - 联系我们 - Linux伊甸园 - Archiver - WAP