鱼C论坛

 找回密码
 立即注册
查看: 619|回复: 2

请问为什么最后的函数butler中的printf不会打印出来

[复制链接]
发表于 2024-2-27 16:56:14 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
#include<stdio.h>
void butler(void);
int main(void)
{
    printf("I will summon the butler function.\n");
    butler();
    printf("Yes. Bring me some tea and writeable DVDs.\n");

    return 0;
}
void butler(void)
{
    printf("You rang, sir?\n");
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2024-2-27 16:56:31 | 显示全部楼层
这是因为在函数butler中,printf语句后面没有使用换行符\n,导致输出没有立即刷新。解决这个问题有两种方法:

1. 在butler函数的最后加上一个换行符\n:
void butler(void)
{
    printf("You rang, sir?\n");
}

2. 在butler函数的最后加上强制刷新的代码`\fflush(stdout)`:
void butler(void)
{
    printf("You rang, sir?");
    fflush(stdout);
}

通过以上两种方法的任一种,都能确保在调用butler函数后,立即输出内容。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-2-27 17:39:27 | 显示全部楼层
会输出的,你检查下是不是没有重新编译?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-22 18:54

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表