• 4805阅读
  • 6回复

请帮我看两个语句的意思? [复制链接]

上一主题 下一主题
离线wangbenqq
 

只看楼主 倒序阅读 楼主  发表于: 2008-06-11
— 本帖被 XChinux 执行加亮操作(2008-06-13) —
sprintf(strLL,"%016I64X  ",Offset);
StrContent += tmp.sprintf("%02X ",Buf);
这两条语句是什么意思啊?
那个%016164X和%02X都是什么东东啊?
看不明白!
请教!
离线wangbenqq

只看该作者 1楼 发表于: 2008-06-11
没人会么?请教啊 !!
离线guoyun_he

只看该作者 2楼 发表于: 2008-06-11
第一个:不知道16和64中间是| 还是1. 你自己查看帮助文档.
第二个: 把 Buf中的数据格式化为2位16进制字符串,如果数据小于16则在前面补零,补够两位!其中X表示是大写, x表示小写. 举例:
如果是02X:  10->0A      16->10      30->1E
如果是02x:    10->0a      16->10    30->1e
离线wangbenqq

只看该作者 3楼 发表于: 2008-06-11
谢谢你!
这个要看哪些帮助文档啊?
那块文档是讲这个的呢??
谢谢!
离线diyuanbo

只看该作者 4楼 发表于: 2008-06-12
第一句 16和64中间应该是大写的i,I64告诉sprintf那个Offset是一个64位整数。打印时写满16格,前面补0,按16进制。当然打印结果放到strLL中。
第二句很常见的。StrContent和tmp大概都是QString。把Buf的值按16进制打印,如果不足2格,前面补0。打印的结果追加到StrContent的屁股。tmp的内容变没变,俺也不知道,可以试一下,或看一下文档。
离线diyuanbo

只看该作者 5楼 发表于: 2008-06-12
sprintf(strLL,"%016I64X  ",Offset);应该看sprintf的手册,一般来说,这是编译器提供的库
离线wangbenqq

只看该作者 6楼 发表于: 2008-06-19
呵呵,谢谢各位大侠的指教!!
谢谢!
快速回复
限100 字节
 
上一个 下一个