CString、char*l类型转换
环境:VS2010
1.CString to char*
第一种方法:
需头文件:atlconv.h
CString host_string;
//CString to char*
USES_CONVERSION;
char *ipaddress = T2A(host_string);
此方法消耗栈空间,适合少量使用。
第二种方法:
int My_WcharToChar(char* pDest,CString& pSource)
{
wchar_t* pawstr = NULL;
pawstr = pSource.GetBuffer(pSource.GetLength()+);
wcstombs(pDest,pawstr,pSource.GetLength()+);
return TRUE;
}
demo:
#include "afxcmn.h"
#include "afxwin.h"
#include "stdio.h"
#include "stdlib.h" //vs2010编译通过 int My_WcharToChar(char* pDest,CString& pSource);
void main()
{
CString csMsg = _T("abcdefghigklmnopqrst");
char chMsg[];
My_WcharToChar(chMsg, csMsg);
printf("GetLength:%d\n",csMsg.GetLength());
printf("sizeof:%d\n",sizeof(csMsg));
printf("%s\n", chMsg);
printf("sizeof:%d\n", sizeof(chMsg));
printf("strlen:%d\n", strlen(chMsg));
} int My_WcharToChar(char* pDest,CString& pSource)
{
wchar_t* pawstr = NULL;
pawstr = pSource.GetBuffer(pSource.GetLength()+);
wcstombs(pDest,pawstr,pSource.GetLength()+);
return TRUE;
}
2.
CString、char*l类型转换的更多相关文章
- CString char BSTR 转换
关于字符集不一的历史原因,可以参考: UNICODE与ANSI的区别 以下是网上转载的资料.我将辅以自己的实例,说明并总结关系. 一.CString, int, string, char*之间的转换 ...
- C语言中string char int类型转换
C语言中string -- ::) 转载 ▼ 标签: 操作符 int char c语言 类型转换 分类: C/Cpp ,char型数字转换为int型 "; printf(]-');//输出结 ...
- CString->char*.,char*->CString,char*->LPCTSTR
CString->char* CString strSource;//宣告CString char* charSource; //宣告char* 法1: charSource = (char*) ...
- VS2013 MFC C++ CString ,const char , char, string 类型转换
VS2013 测试 以下测试加入头文件: # include <string>#include <cstdlib>using namespace std; //-------- ...
- MFC CString的L和_T
这个问题困扰了很久,这个解释貌似好理解一些 L表示UNICODE串,比如wchar_t* str = L"yangsongx";_T在ANSI编译模式下表示ANSI串,在UNICO ...
- l类型转换错误ClassCastException
出现问题原因story中参数写错:
- MFC string char cstring 类型转换
在Unicode环境下用以下转换: CString z_strCurtTime = _T(""); // 获取当前时间 CTime z_tCurTime = CTime::GetC ...
- VC中BSTR、Char和CString类型的转换
1.char*转换成CString 若将char*转换成CString,除了直接赋值外,还可使用CString::format进行.例如: char chArray[] = "This is ...
- char*,wchar_t*,CString和BSTR之间的转换
前言 本文并不尝试列举出所有的转换方法,只列举作者认为方便易用的方法. 1.char*和wchar_t*的相互转换 可以利用中间类_bstr_t(头文件comdef.h)方便的进行相互转换 const ...
随机推荐
- Linux中buff/cache内存占用过高解决办法
在Linux系统中,我们经常用free命令来查看系统内存的使用状态.在一个centos7的系统上,free命令的显示内容大概是这样一个状态: 这个命令几乎是每一个使用过Linux的人必会的命令,但越是 ...
- Kafka性能调优 - Kafka优化的方法
今天,我们将讨论Kafka Performance Tuning.在本文“Kafka性能调优”中,我们将描述在设置集群配置时需要注意的配置.此外,我们将讨论Tuning Kafka Producers ...
- springmvc的注解配置
springmvc大大减少了对xml的配置,减少了配置量,以及可以在一个controller类中进行多个请求配置 一.springmvc配置 context:component-scan 开启包扫描, ...
- LVS(3种模式+10种调度算法)
一.LVS简介 LVS(Linux Virtual Server)即Linux虚拟服务器,是由章文嵩博士主导的开源负载均衡项目,目前LVS已经被集成到Linux内核模块中.该项目在Linux内核中实现 ...
- 手把手带你写一个minishell
先解释一下Shell : Shell是一个功能为命令行解释器的应用程序,连接了用户和Linux内核,让我们能高效和安全地使用Linux内核. 要写一个minishell,我们要先理解它的过程: 读取输 ...
- mysql中sum与if,case when 结合使用
1.sum与if结合使用 如图:数据表中,count_money 字段可为正,可为负.为正表示收入,负表示支出. 统计总收入,总支出. select sum(if(count_money > 0 ...
- Fiddler代理手机抓包
Fiddler代理手机抓包 0. 安装Fiddler 1. 安装HTTPS证书并允许远程连接 Tools - Options 点击OK后重启Fiddler. 确保手机与当前电脑在同一局域网. 然后在手 ...
- flutter 动画 practice
import 'package:flutter/material.dart'; import 'dart:io'; import 'dart:async'; main() => runApp(M ...
- 原生JS获取HTML DOM元素的8种方法
JS获取DOM元素的方法(8种) 通过ID获取(getElementById) 通过name属性(getElementsByName) 通过标签名(getElementsByTagName) 通过类名 ...
- HP-UX 解压缩tar.gz
对于tar.gz包分两步: gunzip *.tar.gz 解压为tar包 tar xf *.tar 解压完成