| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2900 人关注过本帖
标题:[求助]关于DialogBoxParam函数的参数问题
只看楼主 加入收藏
圆圆的鸟蛋
Rank: 1
等 级:新手上路
帖 子:216
专家分:0
注 册:2007-4-22
收藏
 问题点数:0 回复次数:9 
[求助]关于DialogBoxParam函数的参数问题
今天同时用SDK和Win32汇编写了同样的程序(我觉得这样比较起来学更容易理解),但是在使用到DialogBoxParam函数是产生了一个疑问。。
DialogBoxParam的第二个参数类型是LPCSTR,使用ID号来指定子控件时,在SDK编程中需要使用MAKEINTRESOURCE宏将它转换为一个字符串。。但是在Win32汇编是却只需要直接传入ID就可以了。。这是为什么呢??(ID号是整数表示的)

望高手指教小弟啊!!

[此贴子已经被作者于2007-11-12 22:12:06编辑过]

搜索更多相关主题的帖子: 函数 参数 SDK 汇编 疑问 
2007-11-12 21:42
无理取闹
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:53
帖 子:4264
专家分:0
注 册:2006-7-26
收藏
得分:0 
对于类型 我不是很懂 因为我觉得汇编里没什么大用
LPCSTR不就是个字符串么?

win32汇编
病毒 加密
目前兴趣所在
2007-11-14 14:59
justholdon
Rank: 1
等 级:新手上路
威 望:2
帖 子:69
专家分:0
注 册:2007-4-23
收藏
得分:0 
LPCSTR是一个变量类型啊,就像DWORD,也可以用DWORD代替!
我也是初学,观点仅拱参考!

just hold on !
2007-11-16 10:40
圆圆的鸟蛋
Rank: 1
等 级:新手上路
帖 子:216
专家分:0
注 册:2007-4-22
收藏
得分:0 
难道汇编里面不用考虑数据类型么??

鸟蛋开始孵化。。。我等待那一天Forever。。
2007-11-18 09:47
无理取闹
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:53
帖 子:4264
专家分:0
注 册:2006-7-26
收藏
得分:0 
汇编里只有db dw dd....这些类型

win32汇编
病毒 加密
目前兴趣所在
2007-11-18 13:14
圆圆的鸟蛋
Rank: 1
等 级:新手上路
帖 子:216
专家分:0
注 册:2007-4-22
收藏
得分:0 
以下是引用无理取闹在2007-11-18 13:14:41的发言:
汇编里只有db dw dd....这些类型

这个我知道啊,,但是字符数组是那个类型呢?


鸟蛋开始孵化。。。我等待那一天Forever。。
2007-11-18 14:53
无理取闹
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:53
帖 子:4264
专家分:0
注 册:2006-7-26
收藏
得分:0 
看来你是高级语言出身啊 你要知道对于寄存器 不过就是个能装32个0和1的东西 哪有什么类型啊
我觉得写汇编就得从电脑的角度考虑问题了
高级语言就是从人的角度考虑的 所以可能大家都说汇编比较难吧

win32汇编
病毒 加密
目前兴趣所在
2007-11-18 16:18
圆圆的鸟蛋
Rank: 1
等 级:新手上路
帖 子:216
专家分:0
注 册:2007-4-22
收藏
得分:0 

呵呵,,是啊。。以前学16位汇编的时候,这里就没搞明白。不知道高级语言中的数组在汇编中是怎么表示的,在汇编中又怎样识别数组????
呵呵


鸟蛋开始孵化。。。我等待那一天Forever。。
2007-11-20 11:15
无理取闹
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:53
帖 子:4264
专家分:0
注 册:2006-7-26
收藏
得分:0 
一个连续的地址不就是数组么 用指针lea指向数组头部不就能操作数组了么
就像c中的 int a[2]={1,2};int* p=a;(好像是这样写的)

win32汇编
病毒 加密
目前兴趣所在
2007-11-20 13:27
WindsonZhL
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2010-11-1
收藏
得分:0 
LPCSTR 等价于 const char * ,是字符型指针而不是静态字符数组。
(对于a[]形式的数组一般习惯上称之为静态数组)

指针本质上仍然是整型,只是编译器对指针的解释与一般整型不同而已。

MAKEINTRESOURCE() 原型为 ((LPSTR)((ULONG_PTR)((WORD)(i))))
即取i的低16位,强转为64位兼容的长型,再转为字符型指针。
VC采用这种方式,大概是为了简化资源管理相关API的实现吧。
2010-11-01 14:54
快速回复:[求助]关于DialogBoxParam函数的参数问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.020288 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved