SysReAllocStringLen 函数 (oleauto.h)

从旧 BSTR 创建包含指定字符数的新 BSTR,并释放旧 BSTR。

语法

INT SysReAllocStringLen(
  [in, out]      BSTR          *pbstr,
  [in, optional] const OLECHAR *psz,
  [in]           unsigned int  len
);

参数

[in, out] pbstr

以前分配的字符串。

[in, optional] psz

要从中复制 len 字符的字符串,或 NULL 以保持字符串未初始化。

[in] len

要复制的字符数。 在后面放置一个空字符,共分配 len 加一个字符。

返回值

返回代码 说明
TRUE
已成功重新分配字符串。
FALSE
内存不足。

注解

分配一个新字符串,将传递的字符串中的 len 字符复制到其中,然后追加一个 null 字符。 释放 当前由 pbstr 引用的 BSTR,并将 pbstr 重置为指向新的 BSTR。 如果 psz 为 null,则会分配长度 为 len 的字符串,但不进行初始化。

psz 字符串可以包含嵌入的 null 字符,不需要以 null 结尾。

如果向此函数传递 NULL 指针,将发生访问冲突,并且程序将崩溃。 你有责任保护此函数免受 NULL 指针的侵害。

要求

要求
目标平台 Windows
标头 oleauto.h
Library OleAut32.lib
DLL OleAut32.dll

另请参阅

字符串操作函数