gpt4 book ai didi

c++ - CString::GetBuffer() 示例

转载 作者:太空狗 更新时间:2023-10-29 21:23:59 27 4
gpt4 key购买 nike

我正在尝试理解 GetBuffer() 函数。看起来它会返回指向 CString 的指针,这在 msdn GetBuffer() 中得到了确认。 .但是,我不明白 msdn GetBuffer() 中显示的示例.

LPTSTR p = s.GetBuffer( 10 );

为什么里面有 10 个?谁能告诉我示例的输出?

最佳答案

10 是最小缓冲区长度,所以如果你在一个 CString 上调用 GetBuffer(),比如 4 个字符,它将分配一个 LPTSTR 10 个字符长,以防你想将一个更长的字符串 strcpy 到该缓冲区中(如他们在示例中这样做)。示例中的 10 是任意的,他们可以很容易地使用 6(“Hello”中的五个字母加上终止空值)或任何更大的数字,它的工作原理是一样的。

不过,一般来说,除非您真的需要使用它,否则最好不要使用 GetBuffer()。

关于c++ - CString::GetBuffer() 示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17096901/

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