栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

在C语言中,stdout缓冲区的大小是多少?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

在C语言中,stdout缓冲区的大小是多少?

实际大小由各个实现定义;该标准并没有规定最小大小(无论如何,基于我已经能够找到的大小)。没有关于如何确定缓冲区大小的线索。

编辑

章节:

7.19.3文件


3当流没有 缓冲时 ,字符应尽快从源或目标出现。否则,字符可能会作为块被累积并传输到主机环境或从主机环境传输。当一个流被 完全缓冲后
,在缓冲区被填充后,字符将作为块与主机环境进行传输。当流被 行缓冲时
,当遇到换行符时,字符打算作为块与主机环境进行传输。此外,当缓冲区已满,在无缓冲流上请求输入或在需要从主机环境传输字符的行缓冲流上请求输入时,打算将字符作为块传输到主机环境。
对这些特性的支持是由实现定义的,并且可能会受到

setbuf
setvbuf
功能的影响


重点已添加。

“实现定义的”不是对“我不知道”的委婉说法,它只是语言标准明确地将其留给 实现定义 行为的声明。

话虽这么说,但是 一种非编程的方法可以找到答案。请查阅编译器的文档。“实施定义的”还意味着实现 必须 记录以下行为:

3.4.1

1 实现定义的行为未
指定的行为,其中每个实现都记录了如何做出选择

。2示例实现定义的行为的一个示例是有符号整数右移时的高阶位的传播。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/391761.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号