如何使 printf 不刷新 C 中的标准输出?

问题描述 投票:0回答:1

在 C 中,通常当我调用

printf
时,它会自动刷新标准输出。

我如何阻止它这样做,并让它将文本放入标准输出而不实际更新终端?

这可能是某些问题的重复,但我真的找不到它

c printf stdout
1个回答
1
投票

阅读您评论中的附加信息后,我相信这是一个 XY 问题

您可以在长字符串中构建整个文本,然后使用

printf
一次将其转储到终端,而不是多次使用
printf
并强制其避免刷新。

您提到整个字符串的长度为 24K。

恕我直言,您对使用 24KB 内存的担忧是没有道理的:

  1. 现在的典型系统(包括手机)都有 GB 的内存,使用 24KB 是可以忽略不计的。
  2. 正如@Verpus评论的那样,即使你避免刷新,所有文本无论如何都必须存储在内存中。
© www.soinside.com 2019 - 2024. All rights reserved.