应优先使用 GetTempPathW,它支持 Unicode,能正确处理中文用户名等场景;若用 ANSI 版本在非英文系统易返回空或截断。

GetTempPathA 和 GetTempPathW 哪个该用?
Windows API 提供了两个版本的函数获取临时目录:GetTempPathA(ANSI)和 GetTempPathW(Unicode)。在现代 C++ 项目中,除非你明确禁用 Unicode 支持(比如定义了 UNICODE 以外的宏),否则应直接使用 GetTempPathW——它返回宽字符路径,能正确处理中文用户名、特殊符号等场景。用 GetTempPathA 在非英文系统上容易返回空字符串或截断路径。
调用 GetTempPathW 的安全写法
这个函数需要你传入缓冲区大小和目标缓冲区指针,它会把路径写进去并返回实际长度(不含结尾