【问题标题】:C++ - How do I append a char to a char[]?C++ - 如何将 char 附加到 char []?
【发布时间】:2012-11-10 02:12:43
【问题描述】:

我正在尝试将 char 附加到 char 数组的末尾:

char szBuffer[MAX_PATH];
if(SHGetSpecialFolderPathA(HWND_DESKTOP, szBuffer, CSIDL_PERSONAL, FALSE)){
    szBuffer[sizeof(szBuffer)] = "\\";
}

我知道这将无法正常工作,但我不确定该怎么做。另外,我将如何附加一个字符串?

【问题讨论】:

  • 我会用std::string buffer = szBuffer; buffer += "\\";

标签: c++ arrays string char


【解决方案1】:

你可以使用strcat,像这样:

strcat(zsBuffer, "\\");

这假定MAX_PATH 有足够的空间来容纳带有附加字符的字符串。

【讨论】:

  • 如果SHGetSpecialFolderPathA 返回的路径正好是MAX_PATH - 1 个字符长,会发生什么?
猜你喜欢
  • 2013-11-22
  • 2012-10-08
  • 2012-07-05
  • 1970-01-01
  • 1970-01-01
  • 2013-03-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多