string str1 = "123";LPCTSTR text = LPCTSTR(str1.c_str());outtextxy(0, 0, text);不过这种直接转换有可能有乱码 需要在vs中调整一下编码格式 具体的可以百度 "c_str转LPCSTR乱码"
CHAR、(PCHAR、PSTR、LPSTR)、LPCSTR Unicode: wchar_t、wchar_t * 、const wchar_t * WCHAR、(PWCHAR、PWSTR、LPWSTR)、LPCWSTR T 通用类型: TCHAR、(TCHAR * 、PTCHAR、PTSTR、LPTSTR)、LPCTSTR 以上,其中:P代表指针的意思,STR代表字符串的意思,L是长指针的意思,在WIN32平台下可以忽略,C代表const常量的意思...
pFile = (LPSTR)(LPCTSTR)finder.GetFilePath();执行后 pFile 指向的是乱码 所以你再往后运行肯定就会出错了 仔细看一下 finder.GetFilePath() 返回的是一个CString;莫非楼主的 从CString 转换 为 char * 的方式错误了?测试 CString str("123");pFile = (LPSTR)(LPCTSTR) str;完全没有问题啊.....
lpWideCharStr:指向接收被转换字符串的缓冲区。 cchWideChar:指定由参数lpWideCharStr指向的缓冲区的字节个数。若此值为零,函数返回缓冲区所必需的宽字符数,在这种情况下,lpWideCharStr中的缓冲区不被使用。 返回值:如果函数运行成功,并且cchWideChar不为零,返回值是由lpWideCharStr指向的缓冲区中写入的宽字符数;如...
只会是乱码。而且,程序还会这样做:连续对地址2000处使用两次delete操作符,这样的后果是十分严重的! 本例中,有这样的代码: String* String1=new String(test1); cout<<*String1<<endl; delete String1;复制代码假设test1中str指向的地址为2000,而String中str指针同样指向地址2000,我们删除了2000处的数据,而...
CHAR、(PCHAR、PSTR、LPSTR)、LPCSTR Unicode: wchar_t、wchar_t * 、const wchar_t * WCHAR、(PWCHAR、PWSTR、LPWSTR)、LPCWSTR T 通用类型: TCHAR、(TCHAR * 、PTCHAR、PTSTR、LPTSTR)、LPCTSTR 以上,其中:P代表指针的意思,STR代表字符串的意思,L是长指针的意思,在WIN32平台下可以忽略,C代表const常量的意思...
const char *c_str()const;//返回一个以null终止的c字符串 int copy(char *s, int n, int pos = 0) const;//把当前串中以pos开始的n个字符拷贝到以s为起始位置的字符数组中,返回实际拷贝的数目 3.2.2 string的特性描述 int capacity()const; //返回当前容量(即string中不必增加内存即可存放的元素个数...
LPWSTR lpWideCharStr, int cchWideChar, LPCSTR lpMultiByteStr, int cchMultiByte, LPCSTR lpDefaultChar, PBOOL pfUsedDefaultChar ); 1. 2. 3. 4. 5. 6. 7. 8. 9. CodePage[in]:指定执行转换的目的代码页,参考MultiByteToWideChar函数中的此参数 ...
String javarecv=obj.hypotenuse("teststr",javasend,1); //javasend传含有中文字符串给C //javarecv接受C含有中的文字符串 System.out.println(" java recv:"+"["+javarecv+"]"); System.out.println(""); System.out.println(""); System.out.println(" end!"); ...
BOOL MByteToWChar(LPCSTR lpcszStr, LPWSTR lpwszStr, DWORD dwSize) { // Get the required size of the buffer that receives the Unicode // string. DWORD dwMinSize; dwMinSize = MultiByteToWideChar (CP_ACP, 0, lpcszStr, -1, NULL, 0); ...