E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
fastcall
函数的调用规则(__cdecl,__stdcall,__
fastcall
,__pascal)
Linux下如何指定调用约定(callingconvention) Windows下的调用约定可以是stdcall/cdecl/
fastcall
,这些标识加在函数名前面,如:int__stdcallfunca
Kaiwii
·
2013-01-14 13:00
Photoshop马赛克效果
void_alpha__
fastcall
_pre_TAlpha::Mosaic(AlphaPara*Para) { intleft; inttop; intright=(left=Para->X
alphabuilder
·
2013-01-05 14:00
__stdcall
__stdcall 被这些修饰关键字修饰的函数,其参数都是从右向左通过堆栈传递的(__
fastcall
的前面部分由ecx,edx传),函数调用在返回前要清理堆栈,但由调用者还是被调用者清理不一定。
wangjiaoyu250
·
2013-01-04 22:00
C++
C++
c
c
winapi
winapi
ptr_fun详解
例子里面是binary_function,unary_function同理):templateinline pointer_to_binary_function ptr_fun(_Result(__
fastcall
chlele0105
·
2013-01-02 17:00
linux内核中的
fastcall
和asmlinkage宏
linux内核中的
fastcall
和asmlinkage宏内核版本:2.6.14嵌入式开发交流群:289195589,欢迎加入!
ce123
·
2012-12-31 08:00
linux内核中的
fastcall
和asmlinkage宏
linux内核中的
fastcall
和asmlinkage宏内核版本:2.6.14嵌入式开发交流群:289195589,欢迎加入!
ce123
·
2012-12-31 08:00
linux内核中的
fastcall
和asmlinkage宏
linux内核中的
fastcall
和asmlinkage宏 内核版本:2.6.14 嵌入式开发交流群:289195589,欢迎加入!
xitong
·
2012-12-31 08:00
linux
托盘弹出气泡提示
123456protected: void __
fastcall
WndProc(TMessage &Message);private: // User declarations UINT
qq752923276
·
2012-12-29 17:00
__cdecl __
fastcall
与 __stdcall
调用约定: __cdecl __
fastcall
与 __stdcall,三者都是调用约定(Calling convention),它决定以下内容:1)函数参数的压栈顺序,2)由调用者还是被调用者把参数弹出栈
vsooda
·
2012-12-28 14:00
__stdcall,__cdecl,_cdecl,_stdcall,__
fastcall
,_
fastcall
区别简介
需要区别__stdcall和__cdecl两者的区别;#defineCALLBACK__stdcall#defineWINAPI__stdcall#defineWINAPIV__cdecl#defineAPIENTRYWINAPI#defineAPIPRIVATE__stdcall#definePASCAL__stdcall#definecdecl_cdecl#ifndefCDECL#define
xuzhiming
·
2012-12-27 12:53
__stdcall
__cdecl
函数调用约定:_stdcall,_cdecl,_
fastcall
(1)_stdcall调用_stdcall是StandardCall的缩写,是C++的标准调用方式,也是Pascal程序的缺省调用方式,参数采用从右到左的压栈方式,如果是调用类成员的话,最后一个入栈的是this指针。这些堆栈中的参数由被调函数自身在返回前清空,使用的指令是retnX,X表示参数占用的字节数,CPU在ret之后自动弹出X个字节的堆栈空间。称为自动清栈。WIN32Api都采用_stdc
mysileng
·
2012-12-27 11:00
__stdcall,_cdecl,__
fastcall
,PASCAL 的调用方式
__cdeclC++voidfun(inta) //默认__cdecl{ cout>::operator>::operator<<(3E8290h)] 003E13D0 cmp esi,esp 003E13D2 call @ILT+305(__RTC_CheckEsp)(3E1136h) }003E13D7 pop edi 003E13D8 pop
fion45
·
2012-12-26 17:00
C++
C++
函数调用约定
函数调用约定的几种类型有:__stdcall,__cdecl,__
fastcall
,__thiscall,__nakedcall,__pascal下面介绍几种常见的函数调用约定(以VS2010编译器为例
WalkingInTheWind
·
2012-11-26 21:00
stdcall
cdecl
函数调用约定
fastcall
thiscall
Linux内核中__init, __initdata, __initfunc(), asmlinkage, ENTRY(),
FASTCALL
()等作用
在阅读Linux内核是,常见到这些宏__init,__initdata,__initfunc(),asmlinkage,ENTRY(),
FASTCALL
()等等。
wuxiaoer717
·
2012-11-18 08:00
__stdcall,__cdecl区别简介
__
fastcall
,_
fastcall
区别简介1.今天写线程函数时,发现msdn中对ThreadProc的定义有要求:DWORDWINAPIThreadProc(LPVOIDlpParameter);
C++ Coder
·
2012-11-14 11:00
彻底理解C/C++调用约定
__stdcall被这些修饰关键字修饰的函数,其参数都是从右向左通过堆栈传递的(__
fastcall
的前面部分由ecx,edx传),函数调用在返回前要清理堆栈,但由调用者还是被调用者清理不一定。
skiing_886
·
2012-11-07 14:00
完全总结__cdecl __
fastcall
, __stdcall,__thiscall
__cdecl__
fastcall
,__stdcall,__thiscall它们都是调用约定(Callingconvention),它决定以下内容:1)函数参数的压栈顺序2)由调用者还是被调用者把参数弹出栈
thefutureisour
·
2012-11-06 10:00
__cdecl
__cdecl 是默认的调用方式,所以只有在打开/Gz(stdcall)或/Gr(
fastcall
)开关时才需要加上,/Gd开关打开表示需要强制加上__cdecl __cdecl和__stdcall都是函数调用规范
lanshengsheng
·
2012-10-15 08:00
WINAPI宏、__cdecl、__stdcall、__
fastcall
一直搞不懂为什么在函数前面加上WINAPI、CALLBACK等是什么意思又不是返回值为什么加在前面今天终于知道了这是一个呼叫声明(姑且称之吧)。引子:看看这个函数:intPASCALWinMain(HINSTANCEhInst,HINSTANCEhPrev,LPSTRszCmdLine,intsw){MSGmsg;/*Callinitializationprocedure*///进行程序的初始化工
TXH0001
·
2012-10-10 16:00
api
dll
callback
pascal
initialization
winapi
cdecl、stdcall、
fastcall
函数调用约定区别
在C语言中,假设我们有这样的一个函数:intfunction(inta,intb)调用时只要用result=function(1,2)这样的方式就可以使用这个函数。但是,当高级语言被编译成计算机可以识别的机器码时,有一个问题就凸现出来:在CPU中,计算机没有办法知道一个函数调用需要多少个、什么样的参数,也没有硬件可以保存这些参数。也就是说,计算机不知道怎么给这个函数传递参数,传递参数的工作必须由函
dqjyong
·
2012-09-26 17:00
function
汇编
语言
pascal
编译器
winapi
_stdcall, cdecl,
fastcall
, this call ,naked call
对_stdcall的理解在C语言中,假设我们有这样的一个函数:intfunction(inta,intb)调用时只要用result=function(1,2)这样的方式就可以使用这个函数。但是,当高级语言被编译成计算机可以识别的机器码时,有一个问题就凸现出来:在CPU中,计算机没有办法知道一个函数调用需要多少个、什么样的参数,也没有硬件可以保存这些参数。也就是说,计算机不知道怎么给这个函数传递参数
zhubo22
·
2012-09-25 18:00
【VC编程技巧】动态链接库☞1.2用模块导出接口
第一步,我先从函数调用方式说起,大家都知道函数调用有几种常见的方式,分别是__cdecl,__stdcall(pascall),__
fastcall
,和thiscall。
chenjintaoxp
·
2012-09-19 02:00
编程
dll
library
编译器
winapi
stdcall, cdecl,
fastcall
, thiscall
在C语言中,假设我们有这样的一个函数:intfunction(inta,intb)调用时只要用result=function(1,2)这样的方式就可以使用这个函数。但是,当高级语言被编译成计算机可以识别的机器码时,有一个问题就凸现出来:在CPU中,计算机没有办法知道一个函数调用需要多少个、什么样的参数,也没有硬件可以保存这些参数。也就是说,计算机不知道怎么给这个函数传递参数,传递参数的工作必须由函
GSYzhu
·
2012-09-18 13:00
汇编
function
语言
pascal
编译器
winapi
C++Builder函数集(文件操作、获取时间、类型转换等)
内存分配函数名称AllocMem函数说明在队中分配指定字节的内存块,并将分配的每一个字节初始化为 0.函数原型如下:void * __
fastcall
AllocMem(Cardinal Size);函数名称
likandmydeer
·
2012-08-30 10:00
Date
工作
System
扩展
C++Builder
磁盘
函数命名规则及调用约定(__cdecl,__stdcall,__
fastcall
)
函数命名规则及调用约定(__cdecl,__stdcall,__
fastcall
)__cdecl是C/C++和MFC程序默认使用的调用约定,也可以在函数声明时加上__cdecl关键字来手工指定。
feixiang_john
·
2012-08-29 08:00
struct
mfc
float
byte
Delphi
64bit
函数调用约定及其作用和执行过程
常见的调用约定有: stdcall,cdecl,
fastcall
,thiscall,naked call stdcall调用约定: stdcall很多时候被称为pascal调用约定,因为pascal是早期很常见的一种教学用计算机程序设计语言
jiagou
·
2012-08-19 12:00
函数
Visual C++中的几种函数调用方式
__
fastcall
4.__thiscall默认情况下,是__cdecl。__cdecl和__stdcall的区别是:__cdecl是调用者清理栈,而__stdcall
晨光静默
·
2012-07-24 19:00
asmlinkage
asmlinkage在大型C语言项目工程或者linux内核中我们都会经常见到两个
FASTCALL
和armlinkage两个标识符(修饰符),那么它们各有什么不同呢?
laoyouji
·
2012-07-19 22:00
linux
System
语言
compiler
optimization
linux内核
cdecl,_stdcall,__
fastcall
, __thiscall区别简介
__thiscall转自:http://msdn.microsoft.com/zh-cn/library/ek8tkfbwThe__thiscallcallingconventionisusedonmemberfunctionsandisthedefaultcallingconventionusedbyC++memberfunctionsthatdonotusevariablearguments.
jinzhilong580231
·
2012-06-05 10:00
function
Class
Parameters
compiler
methods
Pointers
为什么逗号表达式返回最后一个表达式的结果?--从另一个角度看C++
要是再扯远点,还有利用寄存器,省去压栈的
fastcall
和C++特有的thiscall。正因为函数调用是一个不断地入栈出栈的过程,所以逗号表达
hengyunabc
·
2012-06-03 13:00
C++
c
工作
asmlinkage
在大型C语言项目工程或者linux内核中我们都会经常见到两个
FASTCALL
和armlinkage两个标识符(修饰符),那么它们各有什么不同呢?
martin2350
·
2012-04-29 22:00
__declspec,__cdecl,__stdcall区别和作用
__cdecl和__stdcall都是函数调用规范(还有一个__
fastcall
),规定了参数出入栈的顺序和方法,如果只用VC编程的话可以不用关心,但是要在C++和Pascal等其他语言通信的时候就要注意了
g710710
·
2012-04-23 10:00
汇编
语言
Delphi
pascal
编译器
winapi
函数的调用约定(cdecl,stdcall,
fastcall
,...)
调用约定 调用约定阐释了程序中函数的调用方式。当一个调用约定形成,我们需要讨论的是被调用的函数是如何获取数据(例如参数),以及这些数据在堆栈中是如何存放的。对于逆向工程来说,深入了解调用约定是很有必要的。因为在逆向工程中会经常遇见不同的调用约定。而且,确定一个函数的调用约定在逆向工程中对于你理解函数也有比较好的帮助。 在我们讨论不同的调用约定之前,先了解一些基础的函数调用指令:CALL和RET
wcyoot
·
2012-04-20 16:00
cdecl、stdcall、
fastcall
函数调用约定区别
cdecl、stdcall、
fastcall
函数调用约定区别在C语言中,假设我们有这样的一个函数:intfunction(inta,intb)调用时只要用result=function(1,2)这样的方式就可以使用这个函数
ltag0110rtag
·
2012-04-08 13:00
function
汇编
语言
pascal
编译器
winapi
static inline Linux内联函数
asmlinkage/
FASTCALL
()/
fastcall
这三个宏指定了函数参数的传递方式。asmlinkage修饰的函数,其参数通过堆栈传递。
Buaaroid
·
2012-03-24 16:00
linux
优化
struct
gcc
编译器
linux内核
【C++】__stdcall,__cdecl和__
fastcall
的作用 函数调用规范_空...
__stdcall,__cdecl和__
fastcall
的作用1)调用约定被以下几个修饰关键字修饰的函数,其参数都是从右向左通过堆栈传递的(__
fastcall
的前面部分由ecx,edx传),函数调用在返回前要清理堆栈
·
2012-03-23 17:00
C++
汇编
pascal
编译器
keyboard
winapi
函数的调用规则(__cdecl,__stdcall,__
fastcall
,__pascal)
关于函数的调用规则(调用约定),大多数时候是不需要了解的,但是如果需要跨语言的编程,比如VC写的dll要delphi调用,则需要了解。 microsoft的vc默认的是__cdecl方式,而windows API则是__stdcall,如果用vc开发dll给其他语言用,则应该指定__stdcall方式。堆栈由谁清除这个很重要,如果是要写汇编函数给C调用,一定要小心堆栈的清除工作,如果是__cd
xpp02
·
2012-03-22 10:00
pascal
_cdecl、_stdcall、_
fastcall
和_thiscall整理
转载: http://www.cnblogs.com/zhank/archive/2009/09/10/1563706.html 1._cdecl是CDeclaration的缩写,表示C语言默认的函数调用方法:所有参数从右到左依次入栈,这些参数由调用者清除,称为手动清栈(由调用者把参数弹出栈)。对于传送参数的内存栈是由调用者来维护的(正因为如此,实现可变参数的函数只能使用该调用约定)。被调用函数
caijun12358098
·
2012-03-21 08:00
c
pascal
编译器
Borland
generation
winapi
解析__cdecl,__
fastcall
, __stdcall 的不同
在函数调用过程中,会使用堆栈,这三个表示不同的堆栈调用方式和释放方式。比如说__cdecl,它是标准的c方法的堆栈调用方式,就是在函数调用时的参数压入堆栈是与函数的声明顺序相反的,其它两个可以看MSDN,不过这个对我们编程没有太大的作用---------------------------------------------------------------调用约定调用约定(Callingcon
晨曦之光
·
2012-03-09 14:00
函数调用规范
常见的调用规范有:stdcall、cdecl、
fastcall
、thiscall、nakedcall一、stdcall调用规范 stdcall很多时候被称为pascal调用规范,因为pascal是早期很常见的一种教学用计算机程序设计语言
freesum
·
2012-02-26 23:00
c
String
汇编
Microsoft
pascal
fun
关于winapi和CALLBACK,_stdcall _cdecl _pascal等的分析与归纳理解
_stdcall_cdecl_pascal_
fastcall
这些关键字是什么意思,有什么区别呢?
xd1103121507
·
2012-02-20 09:00
函数的调用规则(__cdecl,__stdcall,__
fastcall
,__pascal)
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/jia_xiaoxin/archive/2008/09/14/2868216.aspx 关于函数的调用规则(调用约定),大多数时候是不需要了解的,但是如果需要跨语言的编程,比如VC写的dll要delphi调用,则需要了解。 microsoft的vc默认的是__cdecl方式,而windowsAPI则
zhanhuai1
·
2012-01-04 21:00
Class
dll
import
pascal
编译器
initialization
_stdcall _cdecl
fastcall
调用方式详解
在C语言中,假设我们有这样的一个函数:intfunction(inta,intb)调用时只要用result=function(1,2)这样的方式就可以使用这个函数。但是,当高级语言被编译成计算机可以识别的机器码时,有一个问题就凸现出来:在CPU中,计算机没有办法知道一个函数调用需要多少个、什么样的参数,也没有硬件可以保存这些参数。也就是说,计算机不知道怎么给这个函数传递参数,传递参数的工作必须由函
lzhlzz
·
2011-12-26 19:00
汇编
function
语言
pascal
编译器
winapi
__stdcall 、__cdecl、__
fastcall
三者的区别
今天重读《windows程序设计第五版》(作者:CharlesPetzold)时,WINAPI被定义为__stdcall,一回想发现忘记了__stdcall的集体含义。于是查阅下相关资料。学习过汇编的童鞋都知道,函数调用要用到stack(栈:一种后进先出的线性结构)。先简单回忆下函数的调用过程(以X86结构为例):1.将函数的参数按照从右往左的顺序依次压入stack(栈)中。2.将当前IP寄存器(
W343051232
·
2011-12-14 17:00
fastcall
cdecl stdcall thiscall
1._cdecl是CDeclaration的缩写,表示C语言默认的函数调用方法:所有参数从右到左依次入栈,这些参数由调用者清除,称为手动清栈(由调用者把参数弹出栈)。对于传送参数的内存栈是由调用者来维护的(正因为如此,实现可变参数的函数只能使用该调用约定)。被调用函数无需要求调用者传递多少参数,调用者传递过多或者过少的参数,甚至完全不同的参数都不会产生编译阶段的错误。 _cdecl是C和C
anycell
·
2011-12-13 13:00
c
pascal
编译器
Borland
generation
winapi
调用约定(cdecl、
fastcall
、、thiscall)
在C语言中,假设我们有这样的一个函数:intfunction(inta,intb)调用时只要用result=function(1,2)这样的方式就可以使用这个函数。但是,当高级语言被编译成计算机可以识别的机器码时,有一个问题就凸现出来:在CPU中,计算机没有办法知道一个函数调用需要多少个、什么样的参数,也没有硬件可以保存这些参数。也就是说,计算机不知道怎么给这个函数传递参数,传递参数的工作必须由
xd1103121507
·
2011-12-11 10:00
汇编
function
语言
pascal
编译器
winapi
[转]__cdecl __
fastcall
与 __stdcall
[转]__cdecl __
fastcall
与 __stdcall Visual C++ Compiler Options可以指定的Calling Convention有 3种: /Gd /Gr
weihe6666
·
2011-12-08 13:00
C++
c
论调用约定__stdcall,__cdecl,__
fastcall
,thiscall,naked call
From:http://blog.vckbase.com/arong/archive/2004/06/09/409.aspx在C语言中,假设我们有这样的一个函数: intfunction(inta,intb) 调用时只要用result=function(1,2)这样的方式就可以使用这个函数。但是,当高级语言被编译成计算机可以识别的机器码时,有一个问题就凸现出来:在CPU中,计算机没有办法知道一个函
JoeBlackzqq
·
2011-12-07 10:00
汇编
function
语言
pascal
编译器
winapi
cdecl、stdcall、
fastcall
、declspec 的用法和区别
首先这三个修饰符是c和c++调用约定 调用约定(Callingconvention)决定以下内容:函数参数的压栈顺序,由调用者还是被调用者把参数弹出栈,以及产生函数修饰名的方法。MFC支持以下调用约定: __cdecl,__stdcal和__fastcalll都是函数调用规范,规定了参数出入栈的顺序和方法,如果只用VC编程的话可以不用关心,但是要在C++和Pascal等其他语言通信
bigconvience
·
2011-12-01 11:00
dll
语言
Delphi
pascal
Borland
winapi
Linux i386+源码中常见宏标识tag的定义
这些宏包括__init、__initdata、__initfunc()、asmlinkage、ENTRY()、
FASTCALL
()等等。
lcw_202
·
2011-11-23 19:00
linux
struct
gcc
user
include
编译器
上一页
4
5
6
7
8
9
10
11
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他