当前位置:  编程技术>java开发知识 iis7站长之家

string,CString,char*之间的转化

    来源: 互联网  发布时间:2014-10-12

    本文导语:  string,CString,char*之间的转化 int 转 CString:CString.Format("%d",int);...............................string 转 CString CString.format("%s", string.c_str()); 用c_str()确实比data()要好. .......................................char* 转 CString CString.format("%s", char*);   CString ...

string,CString,char*之间的转化

int 转 CString:
CString.Format("%d",int);
...............................
string 转 CString
CString.format("%s", string.c_str());
用c_str()确实比data()要好.
.......................................
char* 转 CString
CString.format("%s", char*); 
 CString strtest;
 char * charpoint;
 charpoint="give string a value";
 strtest=charpoint; //直接付值
...................................................................
CString 转 int
 CString  ss="1212.12";
 int temp=atoi(ss); //atoi _atoi64或atol

将字符转换为整数,可以使用atoi、_atoi64或atol。
int int_chage = atoi((lpcstr)ss) ;
或:
   CString str = "23";
   UINT uint;
   sscanf(str, "%d", uint);
..............................
string 转 int
..............................
char* 转 int
 #include

 int atoi(const char *nptr);
 long atol(const char *nptr);
 long long atoll(const char *nptr);
 long long atoq(const char *nptr);
...................................................................
CString 转 string
  string s(CString.GetBuffer());
  GetBuffer()后一定要ReleaseBuffer(),否则就没有释放缓冲区所占的空间.
..........................................
int 转 string
..........................................
char* 转 string
 string s(char *);
 你的只能初始化,在不是初始化的地方最好还是用assign().
...................................................................
CString 转 char *

代码如下:

 CString strtest="wwwwttttttt";
 charpoint=strtest.GetBuffer(strtest.GetLength());
CString转换 char[100]
 char a[100];
 CString str("aaaaaa");
 strncpy(a,(LPCTSTR)str,sizeof(a));
  CString  str="aaa"; 
  char*  ch; 
  ch=(char*)(LPCTSTR)str;
 

..........................................
int 转 char *
 在stdlib.h中有个函数itoa()
 itoa的用法:
 itoa(i,num,10);
 i 需要转换成字符的数字
 num 转换后保存字符的变量
 10 转换数字的基数(进制)10就是说按照10进制转换数字。还可以是2,8,16等等你喜欢的进制类型
 原形:char *itoa(int value, char* string, int radix);
 实例:
 
代码如下:

 #include "stdlib.h"
 #include "stdio.h"
 main()
 {
 int i=1234;
 char s[5];
 itoa(i,s,10);
 printf("%s",s);
 getchar();
}

..........................................
string 转 char *
代码如下:

char *p = string.c_str();

 string aa("aaa");
 char *c=aa.c_str();
 string mngName;
 char t[200];
 memset(t,0,200);
 strcpy(t,mngName.c_str());
 

...................................................................
标准C里没有string,char *==char []==string
可以用CString.Format("%s",char *)这个方法来将char *转成CString。要把CString转成char *,用操
作符(LPCSTR)CString就可以了。
cannot convert from 'const char *' to 'char *'
const char *c=aa.c_str();
string.c_str()只能转换成const char *

CString 头文件#include
string 头文件#include

CString 转char *

CString cstr;

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

string 转 CString
CString.format("%s", string.c_str());

char 转 CString
CString.format("%s", char*);

char 转 string
string s(char *);

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

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

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(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 *

CString 转char *

CString cstr;

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

string 转 CString
CString.format("%s", string.c_str());

char 转 CString
CString.format("%s", char*);

char 转 string
string s(char *);

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

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

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(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

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

CString转换 char[100]

char a[100];
CString str("aaaaaa");
strncpy(a,(LPCTSTR)str,sizeof(a));


charpoint=strtest.GetBuffer(strtest.GetLength());

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

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

CString转换 char[100]

char a[100];
CString str("aaaaaa");
strncpy(a,(LPCTSTR)str,sizeof(a));


    
 
 

您可能感兴趣的文章:

  • java中int, double 转化成String, String转化成double,怎么做?请给个例子.
  • 菜问题:如何进行数据类型的转化,比如int转化为string
  • 已知a=1,b=2 String string="a+b";如何将string转化为表达式,并计算结果
  • 请问怎样才能将 String curOp=exp.indexOf(i) 的右边转化成String?
  • string 和 byte[]转化
  • 请教各位,怎样把String型转化为日期形式,
  • 菜鸟问题-如何将char[]转化为string??
  • 如何把int类型的转化成String类型的
  • 如何把int转化成string类型
  • 怎样把String型转化为int型?
  • 如何把一个int型的数转化成String?
  • 如何把string类型的转化成int类型的?
  • 如何将string型转化为int型,请给一个表达时!谢谢!!
  • 那位高手能指教在java里string类如何转化成date型?
  • int型转化string型用什么函数?
  • 关于ByteBuffer,如何将ByteBuffer转化为String?
  • 怎样把type为int的数据强制转化成String型???(很菜的问题,大家见笑了:-))
  • 如何把String(如:2002-5-17 16:15:11)转化为Timestamp类型
  • string怎么转化成double?
  • 在线求助怎样把string的数组元素转化成integer?急!
  • Python3中内置类型bytes和str用法及byte和string之间各种编码转换
  • Primitive 与 String 之间的转换必须采用封装类吗?
  • String a="123"与String a=new String("123")出来的两个a,b之间有什么区别???
  • C#中List〈string〉和string[]数组之间的相互转换
  • QString和char以及string之间的赋值详解
  • 浅析string类字符串和C风格字符串之间的区别
  • 100分请问String和int之间如何互相转换???????????
  • wchar_t,char,string,wstring之间的相互转换
  • 浅析string 与char* char[]之间的转换
  • 深入理解c++中char*与wchar_t*与string以及wstring之间的相互转换
  • 我的String和Date之间的转换有问题,那位给我看看啊
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • java命名空间java.lang类string的类成员方法: string定义及介绍
  • 请告知一下String s1 = "mm"; 与String s1 = new String("mm");的区别!
  • C++ Bitsets 成员 to_string():返回bitset的字符串表示
  • String s = new String() 和 String s= null;有什么区别?
  • java命名空间javax.xml.xpath类xpathconstants成员方法: string定义参考
  • 对String.indexOf(String str,int fromIndex);和lastIndexOf(String str, int fromIndex);的困惑!
  • java命名空间javax.management.openmbean类simpletype<t>的类成员方法: string定义及介绍
  • 问个低级的问题:我从库里取汉字时候,代码如下:String ls=ob.test(i);String dbstr1= new String(ls.getBytes("ISO-8859-1"),"GBK");
  • java命名空间java.io接口objectstreamconstants的类成员方法: tc_string定义及介绍
  • c#中 String和string的区别介绍
  • java命名空间javax.xml.ws.handler接口messagecontext成员方法: query_string定义参考
  • static String和String如何互相赋值?
  • C++ Strings(字符串) 成员 get_allocator():返回配置器
  • 请问“new String[]{(String ) ob}”怎么理解??
  • C++ Strings(字符串) 成员 at():按给定索引值返回字符
  • 内容是String[]的Object用什么最简单办法转变回String[]
  • C++ Strings(字符串) 成员 empty():如果字符串为空,返回真
  • 请问String.equals()和String.equalsIgnoreCase()有什么区别啊?
  • C++ Strings(字符串) 成员 begin():返回一个迭代器,指向第一个字符
  • 问一个简单问题,String和String Buffer有什么区别?
  • C++ Strings(字符串) 成员 data():返回内容的字符数组形式
  • 请问 int indexOf(String str)和 int lastIndexOf(String str)方法有什么区别?


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3