首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

C/C++基准有没有规定"调用约定"的内容,例如函数的参数要从右向左压入堆栈

2013-12-05 
C/C++标准有没有规定调用约定的内容,例如函数的参数要从右向左压入堆栈?例如,我知道GCC/VC的函数参数都

C/C++标准有没有规定"调用约定"的内容,例如函数的参数要从右向左压入堆栈?
例如,我知道GCC/VC的函数参数都是从右向左压栈的。这个东西到底是编译器实现的某种选择,还是C/C++标准规定了的顺序或者方向?
[解决办法]
c标准没有规定,是编译器实现的
c标准中的说明(6.9.1.9)是The layout of the storage for parameters is unspecified.
常见的实现方式有以下这些
cdecl
syscall
optlink
pascal
stdcall
Microsoft fastcall
Borland fastcall
watcom register based calling convention
TopSpeed/Clarion/JPI
safecall
thiscall
Microsoft x64 calling convention
System V AMD64 ABI

热点排行