hdu1265-Floating Point Presentation
传送门:hdu1265
开始做这道题的时候硬是按照规则把浮点数转化成了16进制字母,样例过了,提交了无数次,WA了无数次,结果网上一查一看,整个人都懵了,还有这种操作,以后还是要多多向大神们学习。
C++有个函数叫memcpy可以进行任意字节内存的拷贝,它的头文件是 < cstring >
函数原型
void *memcpy(void *destin, void *source, unsigned n);
即第一个参数是目标的地址,第二个是被拷贝的内存地址,第三个参数是被拷贝的字节数。
剩下的就是十六进制输出了,具体看代码
#include<iostream>
#include<cstring>
using namespace std;
int main()
{
int N;
cin >> N;
unsigned x;
float a;
while (N--)
{
cin >> a;
memcpy(&x, &a, 4);
cout << uppercase << hex << x << endl;
}
return 0;
}