c – 如何获取临时文件夹并设置临时文件路径?

如何获取临时文件夹并设置临时文件路径?我尝试过代码,但它有错误.非常感谢你!

TCHAR temp_folder [255];
GetTempPath(255, temp_folder);

LPSTR temp_file = temp_folder + "temp1.txt";
//Error: IntelliSense: expression must have integral or unscoped enum type
最佳答案
这段代码添加了两个指针.

LPSTR temp_file = temp_folder + "temp1.txt";

它不是concatenating字符串,它不会为您想要的结果字符串创建任何存储空间.

对于C风格的字符串,请使用lstrcpylstrcat

TCHAR temp_file[255+9];                 // Storage for the new string
lstrcpy( temp_file, temp_folder );      // Copies temp_folder
lstrcat( temp_file, T("temp1.txt") );   // Concatenates "temp1.txt" to the end

基于the documentation for GetTempPath,用MAX_PATH 1替换代码中所有255的出现也是明智之举.

转载注明原文:c – 如何获取临时文件夹并设置临时文件路径? - 代码日志