什么是TCHAR字符串,例如LPTSTR和LPCTSTR以及如何使用这些字符串? 当我在Visual Studio中创建一个新项目时,它为我创建了这个代码: #include int _tmain(int argc, _TCHAR* argv[]) { return 0; } 例如,我如何连接所有命令行参数? 如果我想打开第一个命令行参数给出的名称的文件,我该怎么做? Windows API定义了许多函数的“A”和“W”版本,例如CreateFile , CreateFileA和CreateFileW ; 那么这些如何彼此不同以及我应该使用哪一个?
我正在修改一些非常古老的(10年)C代码。 该代码在Unix / Mac上使用GCC进行编译,并使用MinGW对Windows进行交叉编译。 目前整个都有TCHAR字符串。 我想摆脱TCHAR并使用C ++字符串代替。 是否仍然需要使用Windows范围的function,或者我现在可以使用Unicode和UTF-8完成所有操作吗?
这似乎是一个非常柔软的问题,但我总是很难查找这个函数,因为似乎有很多关于char和tchar的引用的变化。