社区
C++ 语言
帖子详情
unicode下CString转const char*的方法?
jil420
2007-10-19 01:49:55
我的vc工程在unicode环境下,请问如何将CString转为const char*呢?
多谢了!
...全文
2188
14
打赏
收藏
unicode下CString转const char*的方法?
我的vc工程在unicode环境下,请问如何将CString转为const char*呢? 多谢了!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
14 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
jpjiang4648
2011-11-02
打赏
举报
回复
感谢akirya的方法,解决我遇到的问题
andywei1982
2008-10-29
打赏
举报
回复
[Quote=引用 9 楼 davidMy 的回复:]
直接用函数c_Str()就可以 很方便的
[/Quote]
c_Str()是string的方法。
jil420
2007-10-19
打赏
举报
回复
我又试了下weiym的方法,也是可以的,只要声明成char*就行了,我刚才是const char*
另,我包含了<locale.h > ,可为什么setlocale(LC_ALL,"chs");还是不能用呢?
珍惜生命远离CPP
2007-10-19
打赏
举报
回复
包含
#include<locale.h>
不然带中文的话就会错误的
jil420
2007-10-19
打赏
举报
回复
真是太感谢大家了,尤其akirya,我用你的方法转换成功了,但加
setlocale(LC_ALL,"chs");这句时,系统说这个函数没定义,但去掉后也能成功转换,不知为何。
好了,结贴,再次感谢!
IT界的微尘
2007-10-19
打赏
举报
回复
直接用函数c_Str()就可以 很方便的
珍惜生命远离CPP
2007-10-19
打赏
举报
回复
你照着我的写不行么?
char* p = new char[1024];
这样分配内存声明.
arong1234
2007-10-19
打赏
举报
回复
楼上的问题是你需要提供一个char*数组来获得输出,然后再把那个char*传给你的函数
一般情况下T2CA应该可以吧?
jil420
2007-10-19
打赏
举报
回复
akirya兄提到的那个函数我不会用,我是这么写
wcstombs(chSQL,strSQL,strSQL.GetLength());
编译出错,说wcstombs' : cannot convert parameter 1 from 'const char *' to 'char *'
珍惜生命远离CPP
2007-10-19
打赏
举报
回复
CString str = _T("中国abc");
setlocale(LC_ALL,"chs");
char sz[128]={0};
wcstombs(sz,str,127);
MessageBoxA(0,sz,0,0);
char*会自动 转换成const char*的
jil420
2007-10-19
打赏
举报
回复
谢谢weiym
我试了你的方法,好像不行,WideCharToMultiByte将cstring转成了char*,可我要转成const char*,系统提示:'WideCharToMultiByte' : cannot convert parameter 5 from 'const char *' to 'char *'
weiym
2007-10-19
打赏
举报
回复
CString str(_T("中国abc"));
int nLen = WideCharToMultiByte(CP_ACP, 0, str, -1, NULL, 0, NULL, NULL);
if(nLen > 0)
{
char* pBuf = new char[nLen];
WideCharToMultiByte(CP_ACP, 0, str, -1, pBuf, nLen, NULL, NULL);
delete []pBuf;
}
珍惜生命远离CPP
2007-10-19
打赏
举报
回复
wcstombs
jil420
2007-10-19
打赏
举报
回复
具体情况是,在unicode下
CString strSQL;
strSQL.Format(_T("update [%s] set %s=? where %s=%d"),strTableName,PhotoField,FirstField,iFirstData);
const char* chSQL;
将strSQL转为chSQL后
sqlite3_prepare(sqlitedb.m_db, chSQL, -1, &stat, 0 );
UNICODE
工程下 C
STRING
转
CONST
CHAR
* 的最简便
方法
VS2005 VS2008
本文介绍了解决sendto函数无法直接发送宽字符的问题,通过简单的几步
转
换,实现了宽字符的有效传输。文章提供了具体的代码示例。
VS 2008 中
UNICODE
工程下 C
STRING
转
CONST
CHAR
* 的最简便
方法
本文介绍了在MFC框架中如何将宽字符字符串
转
换为非
Unicode
字符串,并强调了
转
换过程中使用LockBuffer()和UnlockBuffer()
方法
的重要性。
C
String
\
string
\
char
*\LPSTR\int\float\byte之间的常见类型
转
换
博客主要介绍了C
String
、
string
和
char
*等类型之间的相互
转
换
方法
,如C
String
转
string
、
string
转
C
String
等。还提到C
String
的Format格式化
方法
好用,
string
的c_str()常用,且在与
char
*
转
换时将
char
定义为
const
char
*更安全,同时指出在
UNICODE
编码下加_T()宏即可。
终于搞定在VS2008中将C
String
转
换为
const
char
*
本文详细探讨了从使用VC6.0过渡到VC2008时遇到的
Unicode
与ANSI编码
转
换问题,包括在C++标准上的变化及解决此类问题的
方法
,特别是针对C
String
转
const
char
*的
转
换问题提供了一个通用函数,以确保代码在不同版本间的一致性。
vs2008
Unicode
编码C
String
转
换为
const
char
* 、int、void * 、LPWSTR
本文介绍了在VS2008环境下,如何将
Unicode
编码的C
String
对象
转
换为
const
char
*、int、void *和LPWSTR。示例中展示了通过C
String
A和_ttoi实现C
String
到
const
char
*和int的
转
换,同时也详细说明了与void *及LPWSTR之间的
转
换
方法
。
C++ 语言
65,211
社区成员
250,514
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章