鱼C论坛

 找回密码
 立即注册
查看: 1642|回复: 2

大神大仙大哥大姐来帮帮忙

[复制链接]
发表于 2012-10-20 23:55:47 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
.data
szbuffer db 256 dup(?)
szCaption db '我的第一个程序',0
szText    db 'hello,world%x',0

   .code
start:
       invoke wsprintf,addr szbuffer,addr szText,offset szCaption
       invoke MessageBox,NULL,addr szbuffer, addr szCaption,MB_OKCANCEL
       invoke ExitProcess,NULL
end start

格式输出我懂,但是我搞不清楚为什么 %X就会输出地址   但是%S输出的是字符串呢? 比如说我把szText 中的%X   改为%S  那么输出的就是        hello,world我的第一个程序
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2012-10-21 00:16:38 | 显示全部楼层
哎 好像知道咋回事了   第二个参数是格式化串      地址        如果是%D %X则是以地址的形式输出  如果是%S则是原样输出字符串                     ☆☆〃
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2012-10-21 00:26:07 | 显示全部楼层
高手出来解释下,我觉得我的理由 好像太过于天真啊啊啊啊啊 啊

补充内容 (2012-10-21 00:28):
TCHAR tcBuffer[1024] = {0};
wsprintf(tcBuffer,L"Age = %d,Name = %s\n",10,"lily");
执行wsprintf后,tcBuffer 等于 "Age = 10,Name = lily"            C语言描述的我能看懂,但是这个我实在是无法理解   
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-18 12:28

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表