【发布时间】:2012-08-23 22:36:42
【问题描述】:
嗯,我是 c++ 的新手,所以在几个项目让我对 c++ 有了基本的了解后,我决定做一些简单的事情(不,hello world 不算在内),我只想做一个%appdata% 上的文件夹,我发现我只需要这样做
void MakeFolder()
{
LPCTSTR appdata = getenv("APPDATA");
char *appchar = getenv("APPDATA");
size_t sizeApp = sizeof(appchar) + 8;
LPCTSTR folder = "/Folder";
StringCchCat(appdata, sizeApp, folder);
CreateDirectory (appdata,NULL);
}
但它说“StringCchCat:找不到标识符”,我已经包含了 STDDEF.h,并且错误代码没有改变!但我不确定代码本身是否能正常工作......
【问题讨论】:
-
根据这个msdn.microsoft.com/en-us/library/windows/desktop/…你需要包含Strsafe.h
-
您不想在刚开始使用 C++ 时进入 Windows API 的复杂世界。 Boost 有一个很棒的文件系统库,它是跨平台的,使用实际的字符串,而不是 typedef 的 C 字符串,并且符合 C++ 的流程(即它不是用 C 编写的)。
标签: c++ concatenation