EOJ 2822 内存显示
一个 int 类型变量或 double 类型变量在连续几个字节的内存中存放。读取数值时,当数值中包含小数点时类型为 double,否则类型为 int。将读入的数值存放在 int 类型变量或 double 类型变量中。以十六进制格式(a-f 字母采用小写形式)输出相应变量的连续的每个字节的值。
读入的数据保证能在一个 int 类型或 double 类型变量中正确存放。
注意:int 类型变量和 double 类型变量所占字节数以及一个变量的几个字节的存放顺序与所用计算机的体系结构和编译系统有关。
Input
每一行包含一个数值
Output
每行对应一个数据,每个字节后面都要输出一个空格。
Examples
1
-1
0
3.14
0.0
-1.0
01 00 00 00
ff ff ff ff
00 00 00 00
1f 85 eb 51 b8 1e 09 40
00 00 00 00 00 00 00 00
00 00 00 00 00 00 f0 bf
注意每行的最后都有一个空格
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void solveint(int n)
{
int c=sizeof(n);
unsigned char* p=(unsigned char*)&n;
while (c--)
printf("%02x ",*p++);
printf("\n");
}
void solvedouble(double d)
{
int c=sizeof(d);
unsigned char* p=(unsigned char*)&d;
while (c--)
printf("%02x ",*p++);
printf("\n");
}
int main()
{
char s[];
while (scanf("%s",s)!=EOF)
if (strchr(s,'.')==) solveint(atoi(s));
else solvedouble(atof(s));
return ;
}
输入,判断数是int类型还是double类型
int字节数: sizeof(int)
开始字节地址:&n
double字节数: sizeof(double)
开始字节地址:&d
&n的类型为int*
&d的类型为double*
为了按字节逐个输出,都强制转换成
unsigned char*类型,小写字母表示的十六
进制输出格式控制符为%02x
EOJ 2822 内存显示的更多相关文章
- 【转】windows7 64位系统认不出8g内存显示只有3G可用
原文网址:http://www.jb51.neos/windows/93721.html 我的电脑安装的是Win7 64位系统,当时内存是用的8G的,系统里面显示出来只有3.00G可用,真是崩溃啊 ...
- QList内存释放(看它内部存储的是否是Object,另外还有qDeleteAll)
QList<T> 的释放分两种情况: 1.T的类型为非指针,这时候直接调用clear()方法就可以释放了,看如下测试代码 #include <QtCore/QCoreApplicat ...
- 面向对象编程(十)——继承之Super关键字及内存分析
Super关键字
- Linux命令(1) - 查看内存使用情况: free -hm
使用"free -hm"命令查看linux服务器的内存使用状况,其中-h表示人性化显示,-m表示将内存显示为M:
- 32位Windows7上8G内存使用感受+xp 32位下使用8G内存 (转)
32位Windows7上8G内存使用感受+xp 32位下使用8G内存 博客分类: Windows XPWindowsIE企业应用软件测试 我推荐做开发的朋友:赶快加入8G的行列吧....呵呵..超爽 ...
- 关于手机"内存"的解答
关于手机"内存"的解答 内存小/少 手机内存在手机出厂的时候就已经固定了,其总量无法调整,不能像电脑一样加内存条.所以想提升可用内存,除了经常清理系统,或者把不是必须的应用移到SD ...
- jconsole工具使用----jvm内存泄漏问题
转载地址:https://www.cnblogs.com/baihuitestsoftware/articles/6405580.html Jconsole,Java Monitoring and M ...
- [转]QList内存释放
QList<T> 的释放分两种情况: 1.T的类型为非指针,这时候直接调用clear()方法就可以释放了,看如下测试代码 #include <QtCore/QCoreApplicat ...
- 64位系统下,一个32位的程序究竟可以申请到多少内存,4GB还是更多?(一)
前言: cpu的位是指一次性可处理的数据量是多少,1字节=8位,32位处理器可以一次性处理4个字节的数据量,依次类推.32位操作系统针对的32位的CPU设计.64位操作系统针对的64位的CPU设计.操 ...
随机推荐
- jquery学习之$(document).ready()
参考资料: 1.W3School在线教程:http://www.w3school.com.cn/jquery/event_ready.asp 2.某人博客园:http://www.cnblogs.co ...
- php加密方法有哪些
1. MD5加密 string md5 ( string $str [, bool $raw_output = false ] ) 参数 str -- 原始字符串. raw_output -- 如果可 ...
- (转)基于Metronic的Bootstrap开发框架经验总结(4)--Bootstrap图标的提取和利用
http://www.cnblogs.com/wuhuacong/p/4762924.html 在前面的一篇随笔<基于Metronic的Bootstrap开发框架经验总结(1)-框架总览及菜单模 ...
- python tips:迭代器与可迭代对象
for循环 for i in s: print(i) 在上述for循环中,不断地将s中的值赋值给i,然后打印出来.这种只针对s中元素的循环称为对s的迭代,能够迭代的s称为可迭代的. python为了实 ...
- kvm之 virt-install工具命令详解
一.virt-install是一个命令行工具,它能够为KVM.Xen或其它支持libvrit API的hypervisor创建虚拟机并完成GuestOS安装:此外,它能够基于串行控制台.VNC或SDL ...
- idea整合eclipse后快捷键
- 以豌豆荚为例,用 Scrapy 爬取分类多级页面
本文转载自以下网站:以豌豆荚为例,用 Scrapy 爬取分类多级页面 https://www.makcyun.top/web_scraping_withpython17.html 需要学习的地方: 1 ...
- WPF通过鼠标滑轮缩放显示图片
如果你使用WinForm比较难实现通过滚动鼠标滑轮来对图片进行缩放显示,那么,你应该考虑一下使用WPF,既然是下一代Windows客户端开发平台,明显是有一定优势的,不然,MS是吃饱了撑着. 首先 ...
- 1.VMware虚拟机的安装
1.找到安装软件 2.使用如下操作安装 3.选择接受协议 4.修改安装目录 5.如果上一步有修改,此步骤不用改路径 7.安装后创建桌面快捷方式 8.安装成功可以看到桌面上有快捷方式图标 安装结束 声明 ...
- 2.Git可视化操作
1.在本地新建版本库 首先,我们打开Git GUI是这样的一个界面,选择第一项,新建版本库. 然后选择你需要进行版本管理的项目路径,我选择了一个LoginDemo的项目. 当你创建了版本库的时候,你可 ...