如何连接两个 LPCSTR

I a*_*mer 3 c++ concatenation lpcstr

我有两个 LPCSTR 我需要像这样连接:

if (!rename(directory + originalFileName, directory + fileName)){
    std::cout<<originalFileName<<std::endl<<fileName<<std::endl<<std::endl;
}
Run Code Online (Sandbox Code Playgroud)

然而,唯一的问题是我不能在+这里使用运算符。我怎样才能像这样安全地连接两个 LPCSTR?

编辑:请注意,LPCSTR 被定义为,const * char而 LPCTSTR 被定义为const TCHAR*。当定义了 UNICODE 和/或 _UNICODE 时,两者是不同的。在这种情况下,他们是。

小智 5

因为LPCSTRCONST CHAR*我用过这个,

(string(dir) + string(originalFileName)).c_str()
Run Code Online (Sandbox Code Playgroud)

  • 请注意,这只能在您不使用包含它的 *full-expression* 末尾的结果时使用 (3认同)