当前位置: 代码迷 >> VC >> 关于Format()的用法?解决思路
  详细解决方案

关于Format()的用法?解决思路

热度:5127   发布时间:2013-02-25 00:00:00.0
关于Format()的用法?
sMessage.Format( "The Selected Color Value Is:\n\n"
"0x%08X Or RGB( 0x%02X, 0x%02X, 0x%02X ).",
crSelColor, GetRValue( crSelColor ),
GetGValue( crSelColor ),
GetBValue( crSelColor ) );


"0x%08X "是什么意思 它又是怎么与"RGB( 0x%02X, 0x%02X, 0x%02X )."联系起来的?
------解决方案--------------------------------------------------------
以16进制格式输出

"0x%08x"

"0x": 普通字符 配合显示16进制格式
"%08x": 8位对齐的16进制格式,少于8位则前补0 

如p=1 ==> 0x00000001
p=16 ==>0x00000010
------解决方案--------------------------------------------------------
0x%02X就是不够的补2位,比如如果对应的值为1,则显示0x01,不然写成0x%x的话,就显示成0x1了。
------解决方案--------------------------------------------------------
举个例子:
颜色:红颜色:RGB(0xff, 0, 0) 等于颜色 0xff * 255*255 + 0 + 0 = 0xff0000
表示为:The Selected Color Value Is:
       00ff000000  Or RGB(ff, 00, 00).
0x%08X 前面的08表示不够8位用0补齐 
  相关解决方案