<分区>
我有一个缓慢运行的循环,可能需要一个小时或更长时间,所以我想打印一个进度指示器。我正在使用以下类型的代码。
for (int i=0; i<=j; i++)
{
pass[0] = 'A' + i;
printf("%c", pass[0]);
\\Some slow running code omitted for brevity
}
如果我使用这段代码,它会在整个循环完成时吐出 ABCD...Z(或在找到答案时停止),这违背了拥有进度指示器的目的。但是如果我在 printf 语句中包含换行符\n ,它将在循环运行时逐步打印出 ABCD 。这就是我想要的行为,但不幸的是它在每个字母之间添加了一个换行符。
我尝试添加一个空格,但没有成功,因为在整个循环完成之前它不会打印。我什至尝试使用 putchar() 函数,它的行为与 printf() 函数相同,我无法让它逐步打印出字母,除非我在每个字符之间插入一个新行。谁能解释这种行为或我做错了什么?