StrNCatW 函数 (shlwapi.h)

将一个字符串开头的指定数目的字符追加到另一个字符串的末尾。

注意 不要使用此函数或 StrCatN 宏。 有关备用函数,请参阅“备注”。
 

语法

PWSTR StrNCatW(
  [in, out] PWSTR  psz1,
            PCWSTR psz2,
            int    cchMax
);

参数

[in, out] psz1

类型:PTSTR

指向以 null 结尾的字符串的指针,函数将字符追加到 psz2。 它必须足够大,才能容纳组合字符串和终止 null 字符。

psz2

类型:PCTSTR

指向要追加的以 null 结尾的字符串的指针。

cchMax

类型:int

要从 psz2开头追加到 psz1 的字符数。

返回值

类型:PTSTR

返回指向 psz1的指针,该指针包含组合字符串。

言论

安全警告:使用此函数可能会损害应用程序的安全性。 第一个参数(psz1)必须足够大,才能容纳 psz2 和结束“\0”,否则可能会出现缓冲区溢出。 如果发生访问冲突,缓冲区溢出可能会导致对应用程序的拒绝服务攻击。 在最坏的情况下,缓冲区溢出可能会允许攻击者将可执行代码注入进程,尤其是在 psz1 是基于堆栈的缓冲区时。 请注意,最后一个参数,cchMax,是复制到 psz1的字符数,不一定是 psz1 的大小(以字节为单位)。 请考虑使用以下替代方法之一。 StringCbCatStringCbCatExStringCbCatNStringCbCatNExStringCchCatStringCchCatExStringCchCatNStringCchCatNEx。 在继续之前,应查看 安全注意事项:Microsoft Windows Shell

注意

shlwapi.h 标头将 StrNCat 定义为一个别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将中性编码别名与不中性编码的代码混合使用可能会导致编译或运行时错误不匹配。 有关详细信息,请参阅函数原型的 约定。

要求

要求 价值
最低支持的客户端 Windows 2000 Professional、Windows XP [仅限桌面应用]
支持的最低服务器 Windows 2000 Server [仅限桌面应用]
目标平台 窗户
标头 shlwapi.h
Shlwapi.lib
DLL Shlwapi.dll(版本 4.71 或更高版本)