编程常用的类型转换方法

        在日常的编码中,我们总是在各种数据类型中转换来转换去,现在我说一下我经常在编码中各种数据之间的转换方法与技巧!

int类型转换

int 转 string

int i = 30; 
char c[10]; 
itoa(i, c, 2);

int 转 CString

int i = 123;
CString str;
str.Format("%d",i);

int 转 float

int i =100;
float ii;
ii = (float)i;//强制转换

int 转char

int number = 123456;
char string[25];
itoa(number, string, 10);//radix 转换进制数,如2,8,10,16 进制

float类型转换

float 转 int

float f = 1.0;
int i;
i = (int)f;

float 转 char

float pi=7.0,test;
char byte[4];
memcpy( byte,&pi,sizeof(float) );

float 转 string

char buffer[50];
double source = -3.1415e5;
_gcvt( source, 7, buffer );
float 转 CString

float f = 1.2;
CString str;
str.Format("%f",f);

char类型转换

LPSTR转换

LPSTR转换成CString

LPSTR lpStr = _T("TestStr");
CString str(lpStr);
PS:CString和LPCSTR也可直接转换:
CString str;
LPCSTR lpcStr = (LPCSTR)str;

【MFC】CString类型转换

CString 转 int

方法1:

s="12345";
int i;
i = Integer.parseInt(s);
方法2:

ansi环境,使用atoi 
unicode环境,使用_ttoi
CString str = ""; 
long m_count = atoi(str.GetBuffer(str.GetLength());

CString转float

 float   i   =   (float)atof(str.GetBuffer(str.GetLength()));
 //如果转换成double,就不用float强制转换了

CString转char*

(LPTSTR)(LPCTSTR)str,即为char*类型”
char*   sz   =   str.GetBuffer(str.GetLength());
 char*   pBuf   =   str.GetBuffer(0);

CString 转 LPSTR

CString str;
LPSTR lpStr = (LPSTR)(LPCSTR)str;

其他转换

点分十进制的IP转换成一个长整数型数

inet_addr("127.0.0.1");将IP地址转换为long

主机字顺序数转换成网络字顺序

htons(6001);//将主机字节序转为网络字节序
htonl(6000);//将主机字节序转为网络字节序

(未完待续)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值