windows下编程wsprintf的问题,大伙儿给看一下。
sbw 2003-09-29 09:34:34 ; 问题是这样的,我用wsprintf格式化一个字符串,用messagebox显示格式化后的字符串,我理想中的结果应该是“01,01,00”,但是messagebox显示的是“01,10000,00”,害的我编写了一个子程序才搞定,不知原因是什么,请高手赐教。
; 我把程序精简了一下,以便各位观看。
.386
.model flat, stdcall
option casemap :none
include windows.inc
include user32.inc
include kernel32.inc
includelib user32.lib
includelib kernel32.lib
.data
szMessage db '%02X,%02X,%02X',0
szBuffer db 20 dup(0)
dbBZ db 01h
db 01h
db 00h
.code
Start:
invoke wsprintf,addr szBuffer,addr szMessage,dbBZ[0],dbBZ[1],dbBZ[2]
invoke MessageBox,NULL,addr szBuffer,NULL,MB_OK
invoke ExitProcess,NULL
end Start