zoukankan      html  css  js  c++  java
  • CString转char * ,string

    CString头文件#include <afx.h>

    string头文件#include <string.h>

    1、CString转char *

    CString cstr;

    char *p =(LPSTR)(LPCTSTR)cstr;

    2、string转 CString
    CString.format(”%s”, string.c_str());

    c_str()确实比data()要好.

    3、char转 CString
    CString.format(”%s”, char*);

    4、char转 string
    string s(char *);

    只能初始化,在不是初始化的地方最好还是用assign().

    5、string转 char *
    char *p = string.c_str();

    6、CString转 string
    string s(CString.GetBuffer());

    GetBuffer()后一定要ReleaseBuffer(),否则就没有释放缓冲区所占的空间.

    ―――――――――――――――――――――

    C++标准函数库》中说的
    有三个函数可以将字符串的内容转换为字符数组和C―string
    1、data(),返回没有”/0“的字符串数组
    2、c_str(),返回有”/0“的字符串数组
    3、copy()

    ―――――――――――――――――――――

    CString与int、char*、char[100]之间的转换--

    1、CString互转int

    (1)将字符转换为整数,可以使用atoi、_atoi64或atol。
    (2)将数字转换为CString变量,可以使用CString的Format函数。如
        CString s;
        int i = 64;
        s.Format(”%d”, i)
    Format函数的功能很强,值得你研究一下。

    voidCStrDlg::OnButton1()
    {
       // TODO: Add your control notificationhandler code here
       CString
       ss=”1212.12″;
       int temp=atoi(ss);
       CString aa;
       aa.Format(”%d”,temp);
       AfxMessageBox(”var is ” + aa);
    }

    sart.Format(”%s”,buf);

    2、CString互转char*

    CString strtest;
    char * charpoint;

    ///char * TO cstring
    charpoint=”give string a value”;
    strtest=charpoint;

    ///cstring TO char *
    charpoint=strtest.GetBuffer(strtest.GetLength());

    标准C里没有string,char*==char []==string

    可以用CString.Format(”%s”,char *)这个方法来将char *转成CString。要把CString转成char*,用操作符(LPCSTR)CString就可以了。

    3、CString转换 char[100]

    ///char[100] TOcstring

    char a[100];
    CString str(”aaaaaa”);

    ///cstring TO char[100]

    strncpy(a,(LPCTSTR)str,sizeof(a));

  • 相关阅读:
    Android轻量级的开源缓存框架ASimpleCache
    ESP8266学习笔记6:ESP8266规范wifi连接操作
    javascript——正則表達式
    STL经常使用遍历算法for_each和transform的比較
    OpenGL(八)使用 subroutine 切换可编程管线
    (一二〇)CALayer的一些特性
    Android 5.0 怎样正确启用isLoggable(一)__使用具体解释
    Elasticsearch的javaAPI之query dsl-queries
    kettle使用log4j管理输出日志
    YY博客园UML用例图-活动图-状态图之博客模块
  • 原文地址:https://www.cnblogs.com/DswCnblog/p/4006895.html
Copyright © 2011-2022 走看看