gpt4 book ai didi

c++ - sgetn 不为空终止字符串

转载 作者:搜寻专家 更新时间:2023-10-31 00:31:26 25 4
gpt4 key购买 nike

sgetnchar* 作为第一个参数并向其写入字符。它不会将尾随 '\0' 写入 char*

这种行为似乎与我能找到写入的 char* 的所有其他时间不一致。但是,它在 Clang、gcc 和 Visual Studio 中是一致的,所以我不敢相信这是所有编译器都有的错误。

标准不要求 '\0'char* 的原因是什么?

[ Live Example ]

最佳答案

因为它可以用来读取任意数据,而不仅仅是文本。

例如std::istream::read函数,它接受一个char*参数,但可以用来读取任意数据,包括二进制数据。您不会期望它在读取二进制文件时添加字符串终止符吗?

关于c++ - sgetn 不为空终止字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34135565/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com