Conversion between CString, int, string, char* _string

Source: Internet
Author: User
Tags sprintf

1 conversion between the cstring,int,string,char*
String Turn CString
Cstring.format ("%s", String.c_str ());

Char Turn CString
Cstring.format ("%s", char*);

Char Turn string
string S (char *);

String char *
Char *p = STRING.C_STR ();

CString turn std::string
CString str = dlg. GetPathName ();
SetLocale (Lc_all, "CHS");
Char *p = new char[256];
Wcstombs (P, str, 256);
M_filename = p;

1,string-> CString
Cstring.format ("%s", String.c_str ());
Using C_str () is indeed better than data ().
2,char-> String
string S (char *);
Your can only initialize, in the place that does not initialize is best still use assign ().
3,cstring-> String
String s (Cstring.getbuffer ());
GetBuffer () must be releasebuffer (), otherwise there is no space to free the buffer.


In the C + + standard library of functions.
There are three functions that can convert the contents of a string into character arrays and c-string
1.data (), returns an array of strings without "/0"
2,C_STR (), returns an array of strings with "/0"
3,copy ()


CString Cross int

Converts a character to an integer, and you can use Atoi, _atoi64, or ATOL.
To convert a number to a CString variable, you can use the CString format function. Such as
CString s;
int i = 64;
S.format ("%d", i)
The Format function is very powerful and worth studying.

void Cstrdlg::onbutton1 ()
{
Todo:add your control notification handler code here
CString
Ss= "1212.12";
int Temp=atoi (ss);
CString AA;
Aa. Format ("%d", temp);
AfxMessageBox ("var is" + AA);
}

Sart. Format ("%s", buf);

CString Mutual Turn char*

char * to CString
CString strtest;
char * CHARPOINT;
Charpoint= "Give string a value";
Strtest=charpoint;


CString to char *
Charpoint=strtest. GetBuffer (strtest. GetLength ());

There is no String,char *==char in standard C []==string

You can use the Cstring.format ("%s", char *) method to turn char * to CString. To convert the CString to char *, use the operator (LPCSTR) to CString it.


CString conversion char[100]

Char a[100];
CString Str ("aaaaaa");
strncpy (A, (LPCTSTR) str,sizeof (a));
2 conversion of CString type to int
Convert CString type to int
Converts a character to an integer, and you can use Atoi, _atoi64, or ATOL.

CString AAA = "16";
int int_chage = Atoi ((LPCSTR) AAA);


To convert a number to a CString variable, you can use the CString format function. Such as
CString s;
int i = 64;
S.format ("%d", i)
The Format function is very powerful and worth studying.
If you are using a char array, you can also use the sprintf function.

CString ss= "1212.12";
int Temp=atoi (ss);
CString AA;
Aa. Format ("%d", temp);


Digital-> strings are Cstring::format, FORMATV, sprintf and AFX Itoa

3 char* in the loading int
#include <stdlib.h>

int atoi (const char *nptr);
Long Atol (const char *nptr);
Long Long Atoll (const char *nptr);
Long Long Atoq (const char *nptr);

4 Conversion between the cstring,int,string,char*
String AA ("AAA");
Char *c=aa.c_str ();


Cannot convert from ' const char * ' to ' char * '
const char *C=AA.C_STR ();

5 conversion between the cstring,int,string,char*
STRING.C_STR () can only be converted to const char *,
To convert to char * This writes:

String Mngname;
Char t[200]; memset (t,0,200); strcpy (T,mngname.c_str ());

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.