97函数调用的约定
Posted 随意就好欧巴
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了97函数调用的约定相关的知识,希望对你有一定的参考价值。
复制文件 fopen
重命名
删除文件
remove
删除文件
#include<stdio.h>
#include<stdlib.h>
void main(){
remove("1.txt");
system("pause");
}
rename 重命名
#include<stdio.h>
#include<stdlib.h>
void main(){
rename("1.txt","2.txt");
system("pause");
}
我们刚开始学习C语言的时候,通过给大家反汇编.
我们知道参数可以通过寄存器传递,也可以通过栈,还可以混合使用.
调用约定 | 压栈顺序 | 平衡堆栈 |
__cdecl | 右->左 | 调用者清理栈 外平栈 |
__stdcall | 右->左 | 自身清理栈 内平栈 |
__fastcall | ECX/EDX传送前两个,剩下的右到左 | 自身清理栈 内平栈 |
返回值都是EAX
调用约定,是给编译器看的,通过编译器生成的汇编代码是什么样子的.
1.怎么样传递参数.
2.怎么样平衡堆栈.
上面几种只是常见的,如果我们经常写完代码,反汇编看的话,有时候会发现调用约定不是以上的任何一种.
以上是关于97函数调用的约定的主要内容,如果未能解决你的问题,请参考以下文章