摘要: VC默认为__stdcall, BCB默认为__cdecl, Delphi默认为__fastcall。 由于BCB使用Delphi的VCL库, 所以也必须使用__fastcall。 关键字 调用规则 参数传递方向 返回 参数寄存器 堆栈的清除 __cdecl C调用规则 从右向左 EAX 无 调用者 __fastcall 寄存器 从左向右 EAX EAX、EBX、ECX 被调用者 __stdcal... 阅读全文
posted @ 2011-08-20 22:10 瓜蛋 阅读(801) 评论(0) 推荐(0) 编辑
摘要: 2008-09-16 14:54 1049人阅读 评论(1) 收藏 举报 __cdecl和__stdcall都是函数调用规范(还有一个__fastcall),规定了参数出入栈的顺序和方法,如果只用VC编程的话可以不用关心,但是要在C++和Pascal等其他语言通信的时候就要注意了,只有用相同的方法才能够调用成功.另外,像printf这样接受可变个数参数的函数只有用cdecl才能够实现. __dec... 阅读全文
posted @ 2011-08-20 21:55 瓜蛋 阅读(485) 评论(0) 推荐(0) 编辑
摘要: 1.概述许多初学者对C/C++语言中的void及void指针类型不甚理解,因此在使用上出现了一些错误。本文将对void关键字的深刻含义进行解说,并详述void及void指针类型的使用方法与技巧。2.void的含义 void的字面意思是“无类型”,void *则为“无类型指针”,void *可以指向任何类型的数据。void几乎只有“注释”和限制程序的作用,因为从来没有人会定义一个void变量,让我们试着来定义:void a;这行语句编译时会出错,提示“illegal use of type 'void'”。不过,即使void a的编译不会出错,它也没有任何实际意义。void真正发 阅读全文
posted @ 2011-08-20 21:23 瓜蛋 阅读(523) 评论(0) 推荐(0) 编辑
摘要: 学习过的东西,不总结是不行滴~~ 阅读全文
posted @ 2011-08-20 19:26 瓜蛋 阅读(204) 评论(0) 推荐(0) 编辑