VCのCString、wchar_t,int,string,char*間の転換---学習まとめ
:http://blog.myspace.cn/e/406900655.htm
VC CString,wchar_t,int,string,char* ---
1. CString wchar_t
CString path = "asdf";
wchar_t wstr[256] = path.AllocSysString();
:
wchar_t wcstring[256];
MultiByteToWideChar(CP_ACP,0,path,-1,wcstring,256);
2. wchar_t CString
WideCharToMultiByte(CP_ACP,0,wcstring,256,path.GetBuffer(0),256,NULL,NULL);
path.ReleaseBuffer(0);
3. string CString
CString.format("%s", string.c_str());
4. char CString
CString.format("%s", char*);
5. char string
string s(char *);
6. string char *
char *p = string.c_str();
7.CString string
string s(CString.GetBuffer());
CString str = "fdjfdas";
string s = (LPCTSTR)str;
1,string -> CString
CString.format("%s", string.c_str());
c_str() data() .
2,char -> string
string s(char *);
, assign().
3,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] - -
CString int、char*、char[100] - -
CString int
, atoi、_atoi64 atol。
CString , CString Format 。
CString s;
int i = 64;
s.Format("%d", i)
Format , 。
void CStrDlg::OnButton1()
{
// TODO: Add your control notification handler code here
CString ss="1212.12";
int temp=atoi((char*)LPCTSTR(ss));
CString aa;
aa.Format("%d",temp);
AfxMessageBox("var is " + aa);
}
sart.Format("%s",buf);
CString char*
///char * TO cstring
CString strtest;
char * charpoint;
charpoint="give string a value";
strtest=charpoint;
///CString TO char *
charpoint=strtest.GetBuffer(strtest.GetLength());
C string,char *==char []==string
char * CString
CString.Format("%s",char *) char * CString。
CString char *
(LPCSTR)strtest (char*)(LPCSTR)strtest 。
CString char[100]
char a[100];
CString str("aaaaaa");
strncpy(a,(LPCTSTR)str,sizeof(a));
Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1570001
( )
string CString ,string (STL) , C++ ;
CString(typedef CStringT > CString) Visual C++ , CSimpleStringT , MFC ATL , char( ANSI),wchar_t(unicode),TCHAR(ANSI unicode );
char* C , '\0' ;
( )
string , , CString char*;
CString , , char* ;
char* , ;
:
char* psz = “joise”;
CString cstr( psz );
string str( cstr );
( )
a) operator=
string , , CString char*;
CString , , char* ;
char* , , strcpy memcpy, char* NULL, , ;
:
char *psz = NULL;
psz = new char[10]; // , char *psz = new char[10];
memset( psz, 0, 10 );
strcpy( psz, “joise” );
CString cstr;
cstr = psz;
string str;
str = psz;
str = cstr;
delete []psz;
b) operator+
string CString , char* , + , string str = str + cstr , char*;
char* + , strcat ;
:
char* psz = “joise”;
CString cstr = psz;
cstr = cstr + psz;
string str = psz;
str = str + str + psz;
strcat( psz, psz );
strcat( psz, cstr );//
strcat( psz, str );// , ,CString const char*, string
c) operator +=
string , +=, CString char*;
CString , += , char* ;
char* += , strcat ;
d) operator[]
CString , ;
string char* ;
:
char* psz = “joise”;
CString cstr = psz;
cout << cstr[8];
string str = psz;
cout << str[8];
cout << psz[8];
e) operator== 、operator!=、operator> 、operator< 、operator>= 、perator<=
CString string , char* , , ;
cout << ( psz == cstr );
cout << ( psz == str );
cout << ( str == psz );
cout << ( cstr == psz );// 1
( )
a)
char* string CString
strchr
strstr
strrstr
strspn find Find
fild_first_of FindOneOf ReserveFind find_if
:find_if true
b)
char* string CString ( ) strcmp
strncmp
strcoll
_strncoll operator<
operator>
operator<=
operator>=
operator==
operator!= Collate
Compare ( ) _stricmp
_strnicmp
_stricoll
_strnicoll CollateNoCase
CompareNoCas
: <0 ,
c)
char* string CString _strset
_strnset
replace
replace_copy
replace_copy_if
replace_if Replace
d)
char* string CString insert Insert
e) char* string CString strcat push
append Append
AppendChar
AppendFormat
f)
char* string CString substr Left
Mid
Right
Truncate
g)
char* string CString remove Remove RemoveBlanks
: ATL , C remove_if Trim
TrimLeft
TrimRig
h)
char* string CString _strlwr
_strupr MakeLower
MakeUpper
i)
char* string CString atoi
atod
atof Format char* c_str
GetBuffer
GetBufferSetLen
j)
char* string CString sprintf Format
k)
char* string CString
strlen length GetLength size GetAllocLength
l)
char* string CString ==NULL '\0' empty IsEmpty
m)
char* string CString realloc
new resize GetBufferSetLength
n)
char* string CString free
delete (delete[]) ReleaseBuffer
ReleaseBufferSetLength
( ) >
CString > string > char*;
( )
CString > string >char*;
( )
char* = string > CString
*****************
CHAR CString !
:
http://hi.baidu.com/gzliaoguozhong/blog/item/128c04df2981c75e94ee379c.html