环境: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类型转换的更多相关文章

  1. CString char BSTR 转换

     关于字符集不一的历史原因,可以参考: UNICODE与ANSI的区别 以下是网上转载的资料.我将辅以自己的实例,说明并总结关系. 一.CString, int, string, char*之间的转换 ...

  2. C语言中string char int类型转换

    C语言中string -- ::) 转载 ▼ 标签: 操作符 int char c语言 类型转换 分类: C/Cpp ,char型数字转换为int型 "; printf(]-');//输出结 ...

  3. CString->char*.,char*->CString,char*->LPCTSTR

    CString->char* CString strSource;//宣告CString char* charSource; //宣告char* 法1: charSource = (char*) ...

  4. VS2013 MFC C++ CString ,const char , char, string 类型转换

    VS2013 测试 以下测试加入头文件: # include <string>#include <cstdlib>using namespace std; //-------- ...

  5. MFC CString的L和_T

    这个问题困扰了很久,这个解释貌似好理解一些 L表示UNICODE串,比如wchar_t* str = L"yangsongx";_T在ANSI编译模式下表示ANSI串,在UNICO ...

  6. l类型转换错误ClassCastException

    出现问题原因story中参数写错:

  7. MFC string char cstring 类型转换

    在Unicode环境下用以下转换: CString z_strCurtTime = _T(""); // 获取当前时间 CTime z_tCurTime = CTime::GetC ...

  8. VC中BSTR、Char和CString类型的转换

    1.char*转换成CString 若将char*转换成CString,除了直接赋值外,还可使用CString::format进行.例如: char chArray[] = "This is ...

  9. char*,wchar_t*,CString和BSTR之间的转换

    前言 本文并不尝试列举出所有的转换方法,只列举作者认为方便易用的方法. 1.char*和wchar_t*的相互转换 可以利用中间类_bstr_t(头文件comdef.h)方便的进行相互转换 const ...

随机推荐

  1. Linux中buff/cache内存占用过高解决办法

    在Linux系统中,我们经常用free命令来查看系统内存的使用状态.在一个centos7的系统上,free命令的显示内容大概是这样一个状态: 这个命令几乎是每一个使用过Linux的人必会的命令,但越是 ...

  2. Kafka性能调优 - Kafka优化的方法

    今天,我们将讨论Kafka Performance Tuning.在本文“Kafka性能调优”中,我们将描述在设置集群配置时需要注意的配置.此外,我们将讨论Tuning Kafka Producers ...

  3. springmvc的注解配置

    springmvc大大减少了对xml的配置,减少了配置量,以及可以在一个controller类中进行多个请求配置 一.springmvc配置 context:component-scan 开启包扫描, ...

  4. LVS(3种模式+10种调度算法)

    一.LVS简介 LVS(Linux Virtual Server)即Linux虚拟服务器,是由章文嵩博士主导的开源负载均衡项目,目前LVS已经被集成到Linux内核模块中.该项目在Linux内核中实现 ...

  5. 手把手带你写一个minishell

    先解释一下Shell : Shell是一个功能为命令行解释器的应用程序,连接了用户和Linux内核,让我们能高效和安全地使用Linux内核. 要写一个minishell,我们要先理解它的过程: 读取输 ...

  6. mysql中sum与if,case when 结合使用

    1.sum与if结合使用 如图:数据表中,count_money 字段可为正,可为负.为正表示收入,负表示支出. 统计总收入,总支出. select sum(if(count_money > 0 ...

  7. Fiddler代理手机抓包

    Fiddler代理手机抓包 0. 安装Fiddler 1. 安装HTTPS证书并允许远程连接 Tools - Options 点击OK后重启Fiddler. 确保手机与当前电脑在同一局域网. 然后在手 ...

  8. flutter 动画 practice

    import 'package:flutter/material.dart'; import 'dart:io'; import 'dart:async'; main() => runApp(M ...

  9. 原生JS获取HTML DOM元素的8种方法

    JS获取DOM元素的方法(8种) 通过ID获取(getElementById) 通过name属性(getElementsByName) 通过标签名(getElementsByTagName) 通过类名 ...

  10. HP-UX 解压缩tar.gz

    对于tar.gz包分两步: gunzip *.tar.gz 解压为tar包 tar xf *.tar 解压完成