CString转float,再转十六进制,再转CString(互转)-创新互联-成都快上网建站

CString转float,再转十六进制,再转CString(互转)-创新互联

在这里插入图片描述

目前创新互联已为上千多家的企业提供了网站建设、域名、虚拟主机、网站改版维护、企业网站设计、建德网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。

MFC应用程序,添加两个编辑框,并给各编辑框添加一个变量(CString m_float、CString m_hex)。


void CMFCFloatToHexDlg::OnBnClickedBtnF2h()
{UpdateData(TRUE);
	float f = _tstof(m_float);
	long hex = *(long*)&f;
	m_hex.Format(_T("%X"), hex);
	UpdateData(FALSE);
}
void CMFCFloatToHexDlg::OnBnClickedBtnH2f()
{UpdateData(TRUE);
	//char* stops, s[3];
	//char d[4];
	//for (int i = 3, j = 0; i >= 0; i--, j++)
	//{//	s[0] = m_hex.GetAt(i * 2);
	//	s[1] = m_hex.GetAt(i * 2 + 1);
	//	s[2] = 0x0;
	//	d[j] = (UCHAR)strtoul(s, &stops, 16);
	//}
	//float f = *((float*)d);

	long hex = _tcstoul(m_hex, nullptr, 16);
	float f = *((float*)&hex);
	m_float.Format(_T("%0.6f"), f);
	UpdateData(FALSE);
}

参考资料:

MFC CString和十六进制互转
https://blog.csdn.net/zb774095236/article/details/88795565

浮点型与16进制数据的相互转换(C语言代码)
https://blog.csdn.net/qq_43537721/article/details/107757766

strtoul, _strtoul_l, wcstoul, _wcstoul_l
https://learn.microsoft.com/zh-cn/cpp/c-runtime-library/reference/strtoul-strtoul-l-wcstoul-wcstoul-l?view=msvc-170

atoi, _atoi_l, _wtoi, _wtoi_l
https://learn.microsoft.com/zh-cn/cpp/c-runtime-library/reference/atoi-atoi-l-wtoi-wtoi-l?view=msvc-170

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


本文标题:CString转float,再转十六进制,再转CString(互转)-创新互联
网站地址:http://kswjz.com/article/cscdch.html
扫二维码与项目经理沟通

我们在微信上24小时期待你的声音

解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流