社区
C++ 语言
帖子详情
unicode下CString转const char*的方法?
jil420
2007-10-19 01:49:55
我的vc工程在unicode环境下,请问如何将CString转为const char*呢?
多谢了!
...全文
2152
14
打赏
收藏
unicode下CString转const char*的方法?
我的vc工程在unicode环境下,请问如何将CString转为const char*呢? 多谢了!
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用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 );
(
const
)
char
转
C
String
详解(字符串类型
转
换详解,不断补充)
`C
String
`可以接受`
const
char
*`、`w
char
_t*`等不同格式的字符串指针作为输入,并能自动进行适当的编码
转
换。 #### 2. `
const
char
*`与`C
String
`之间的
转
换 从`
const
char
*`到`C
String
`的
转
换通常较为直接,因为...
C++类型
转
换(
char
*
string
c
string
unicode
ansi )
转
换
C++类型
转
换(
char
*
string
c
string
unicode
ansi 等等)
转
换 C++类型
转
换是指在C++编程语言中,各种类型之间的
转
换操作。这种
转
换操作包括基本类型之间的
转
换、字符串类型之间的
转
换、字符类型之间的
转
换等等。在...
C
String
型
转
char
型
方法
总结
以下是对`C
String
`
转
`
char
`几种常用
方法
的详细说明: 1. **传给未分配内存的`
const
char
*`(`LPCTSTR`)指针** 这是最简单且安全的
方法
。`LPCTSTR`在
Unicode
环境下等价于`LPCWSTR`,在非
Unicode
环境下等价于`...
C
String
-
const
-
char
-
char
-to-W
CHAR
.rar_C
String
To
Char
_
char
w
char
_
要将一个包含宽字符的`C
String
`对象
转
换为`
const
char
*`,可以使用`C
String
`的`MultiByteToWide
Char
`函数。这个函数将
UNICODE
字符串
转
换为多字节字符串,通常用于与非
UNICODE
API交互。在
转
换前,你需要确定目标...
wince开发用
转
换类
static void Gb2312To
Unicode
(w
char
_t* pstrOut, u32 dwOutLen,
const
char
* pstrIn, u32 dwInLen); static C
String
string
_to_c
string
(
string
text); static int
string
_to_int(
string
str); static
string
c
string
...
C++ 语言
65,198
社区成员
250,522
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章