WinHex截图:
内存映射文件的方式得到起始地址的指针:ptr_File = (char*)pbFile;
目的:按照 ”53 FF 00 F0 …….“的格式输出到屏幕上。
本人写的程序,有错误希望大家帮看看,改改?
内存映射文件的方式得到起始地址的指针:ptr_File = (char*)pbFile;
目的:按照 ”53 FF 00 F0 …….“的格式输出到屏幕上。
本人写的程序,有错误希望大家帮看看,改改?
for(int K=0;K<10;K++) { printf("ptr_File[K]=%X\n",ptr_File[K]); Sleep(2000); }
输出结果是:
输出结果和预期的(按照 ”53 FF 00 F0 …….“的格式输出到屏幕上)不一样?为什么?谢谢。
问题2: 假如本人想ptr_File[K]==00 时作为判定条件。if(这怎么写?)
这些知识了解的很少。谢谢大家帮忙.。
解决方案
20
%mx, 之类的格式输出,输出宽度不够,忽略输出宽度,直接全部输出
在输出前,转换为无符号类型,可以避免这种问题,,,,
全部较短整型,在调用 printf 之类的输出流函数的时候,会转换为int 类型,
而 char 类型缺省实现,并不是 unsigned char,通常是 signed char;
转化为int 的时候,会做符号位扩展
在输出前,转换为无符号类型,可以避免这种问题,,,,
全部较短整型,在调用 printf 之类的输出流函数的时候,会转换为int 类型,
而 char 类型缺省实现,并不是 unsigned char,通常是 signed char;
转化为int 的时候,会做符号位扩展