问题描述:在编程过程中遇见一需求,需要从一文件中读取16进制格式的数据(格式如下图1所示),存储在内存中(char buf [MAX_SIZE])。然而,在测试读取的数据时,用printf("%02x",buf);输出数据时,出现了一个怪异的问题:凡是每个字节的高4位的值大于8,这个字节输出值前面就会唐突的冒充多个ffffff(结果见图2)。

图1 输入文件中的数据格式

图2 输出数据格式

对比图1 与图2 可以发现,针对每个字节,凡是高4位值大于8的,前面都会多出数个f.

我的输出代码如下:

 int rsize;char buf[MAX_SIZE];        //问题的始作俑者*****rsize = fread(buf,sizeof(char),filesize,fp);if (rsize < 0){printf("Failed to read file .\n");}buf[rsize] = '\0';int i ;for ( i = 0; i < rsize; ++i){if ((i%16) == 0 ){printf("\n");}printf("%02x ",buf[i]);}

造成这种显现的原因是什么呢?use printf to print character string in hex format, distorted results   这里有讨论,归根芥蒂,就是printf("%02x",buf);输出时,溢出了。如果将存放数据的buf改为,unsigned char buf[MAX_SIZE)问题就能解决。

C/C++ printf 输入16进制文本数据 多出许多ffffff的问题相关推荐

  1. 用bat脚本写一个输入16进制转ascii码的代码

    以下是一个使用 BAT 脚本实现 16 进制转 ASCII 码的代码示例: @echo off set /p hex=请输入16进制字符串: for /l %%i in (0,1,%hex:~0,-2 ...

  2. 16进制文本转二进制文件

    16进制文本流转二进制文件(wireshark copy as Hex Stream的格式), 先上操作 xxd -r -p input.txt output.bin 参数解释 -r 逆向操作: 把x ...

  3. ASCII字符和16进制字节数据互转

    接着上次写的一个字符转换.这次是互转,更便于理解. 1.CharToHex() //功能描述:把ASCII字符转换为16进制 将两个ASCII字符转化为单个字节进行显示,即两个字节转化为一个字节.如' ...

  4. printf输出16进制数

    // 把网卡MAC地址格式化成常用的16进制形式,如0010-A4E4-5802         printf( "The Ethernet Number[%d] is: %02X%02X- ...

  5. hexde php_怎样在PHP中把16进制HEX数据转换为2进制数据呢?

    展开全部 十六进制62616964757a686964616fe78988e69d8331333337623531转为二进制有两种理解方法,第一是十六进制字符串转二进制字符串,第二是十六进制数转二进制 ...

  6. python socket发送16进制数据_python socket以16进制的数据进行传递与解析

    参考:http://m.blog.csdn.net/blog/JasonQue/8256424 具体的struct模块的解释可以参照上面的链接. struct.pack也就是将数据按照二进制的格式进行 ...

  7. 使用栈将用户输入的十进制数转换为其指定的进制(2进制、8进制、16进制)数据

    进制转换的核心模块 当e>9时,e+55输出A~F字符 void conversion( SeqStack* s, int n ,int m) {int e;while (n){Push_Seq ...

  8. c语言16进制转换成文本显示,文本如何转换成16进制字节集数据

    .版本 2 .子程序 取十进制, 整数型, , 将非十进制的标准格式文本转换成十进制整数值 .参数 欲转换的值, 文本型, , 欲转换的值,文本型! .参数 数值类型, 整数型, 可空, 0,#十六进 ...

  9. java 输入16进制_尝试使用十六进制输入来使用小端和大端

    我试图用这两个原型编写C函数: int extract_little (char* str, int ofset, int n); int extract_big(char* str, int ofs ...

最新文章

  1. 练习用基础SQL语句
  2. 报告老板,微服务高可用神器已祭出,您花巨资营销的高流量来了没?
  3. checksum table 【转】
  4. 数据结构-单链表实现
  5. 【原】Redis事务管理
  6. laravel 如何 new php 类,PHP实例:laravel通过创建自定义artisan make命令来新建类文件详解...
  7. 知识图谱入门2-2:用户输入->知识库的查询语句
  8. 妙用VM的“远程显示”功能
  9. 30.Linux/Unix 系统编程手册(上) -- 线程:线程同步
  10. [原]Greenplum failed segment的恢复方法
  11. PMP考试必备基础知识
  12. 工资软件测试白盒测试报告,白盒测试测试报告模板.doc
  13. 浅析RTB和RTA(一)
  14. UE4 虚幻 常用的流程控制蓝图节点介绍
  15. 如何进行计算机系统安装教程,电脑怎么重装系统:系统安装教程
  16. debug基本命令及全称
  17. Beyond Compare 的开源替代工具meld
  18. 微信小程序、app集成微信支付
  19. 数据科学学习之探索性数据分析(EDA)
  20. vanish(squid) + HAProxy + nginx + memcached(redis)

热门文章

  1. 剖析Mozilla代码之七武器
  2. 【从0到1搭建LoRa物联网】2、终端设备开发方式
  3. Python 函数 | sorted 函数详解
  4. fitbit手表中文说明书_入侵Fitbit-为Twitter DM模拟寻呼机!
  5. 筛选英语高于计算机成,计算机应用基础--excel操作题2
  6. h5开启摄像头拍照+腾讯云接口人脸验证
  7. 基于单片机的CO浓度检测及报警系统设计(电路+程序流程)
  8. C#如何实现多窗口切换
  9. DNF60版本阿里云服务器+本地客服端教程①服务端搭建
  10. ClassNotFoundException: org.codehaus.plexus.logging.LoggerManager