当前位置:首页 » 软件开发
开发技术指南» 文章正文
    引言: 调用约定(Calling Convention)是指在java/j2me/code/ target=_blank>程序设计语言中为了实现函数调用而建立的一种协议。
 

 

 ·一个画图类,类似ms    »显示摘要«
    摘要: 续上节.下面是类的实现.为了消除做图时的屏幕的闪烁,所以采用了位图的方式.在做图时充分考虑到了数值分析时的特点,作了三点处理: (一)将网格线进行了自动调整,确保数据显示位于区域之内(二)如果出现零值,则确保0值网格线的出现(三)自动调整数值的显示方式,确保了横轴显示效果因此,非常适合于数值分析的图形显示,当然,由于采用了位图帖图的方式进行做图,你完全可以用它来进行实时绘图.lyhlinech......
 ·struts傻瓜式学习(一天篇)    »显示摘要«
    摘要: struts傻瓜式学习(一天篇)......


DLL中调用约定和名称修饰(一)
  调用约定(calling convention)是指在java/j2me/code/ target=_blank>程序设计语言中为了实现函数调用而建立的一种协议.这种协议规定了该语言的函数中的参数传送方式.参数是否可变与由谁来处理堆栈等问题.不同的语言定义了不同的调用约定.

  因此,为了使其它语言编写的模块(如visual basic应用程序.pascal或fortran的应用程序等)可以 调用c/c++编写的dll的函数,必须使用正确的调用约定来导出函数,并且不要让编译器对要导出的函数进行任何名称修饰. 【程序编程相关:VC一点通:实现文件夹的缩略图显示

  在c++中,为了允许操作符重载与函数重载,c++编译器往往按照某种规则改写每一个入口点的符号名,以便允许同一个名字(具有不同的参数类型或者是不同的作用域)有多个用法,而不会 打破现有的基于c的链接器.这项技术通常被称为名称改编(name mangling)或者名称修饰(name decoration).许多c++编译器厂商选择了自己的名称修饰方案. 【推荐阅读:得到远程机器MAC地址源代码

调用约定用来处理决定函数参数传送时入栈与出栈的顺序(由调用者还是被调用者把参数弹出栈),以及编译器用来识别函数名称的名称修饰约定等问题.在microsoft vc++ 6.0中定义了下面几种调用约定,我们将结合汇编语言来一一分析它们: 【扩展信息:在VC中如何将数据导入Word中

  1.调用约定(calling convention)

  1.__cdecl

  __cdecl是c/c++与mfc程序默认使用的调用约定,也可以在函数声明时加上__cdecl关键字来手工指定.采用__cdecl约定时,函数参数按照从右到左的顺序入栈,并且由调用函数者把参数弹出栈以清理堆栈.因此,实现可变参数的函数只能使用该调用约定.由于每一个使用__cdecl约定的函数都要包含清理堆栈的代码,所以产生的可执行文件大小会比较大.__cdecl可以写成_cdecl.

  下面将通过一个具体实例来分析__cdecl约定:

  在vc++中新建一个win32 console工程,命名为cdecl.
...   下一页
    摘要: windows环境下的麦克风录音系统 6.麦克录音系统简介 本文实现的麦克录音系统将具备以下功能: 1.录制用户通过麦克风发出的声音; 这将利用到waveform apis,流程如下: a.打开录音设备waveinopen; b.准备wave数据头waveinprepareheader; c.准备数据块waveinaddbuffer; d.开始录音waveinst......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE