首页 > 其他分享 >c函数堆栈

c函数堆栈

时间:2024-06-05 13:58:03浏览次数:24  
标签:return 函数 int char 反汇编 堆栈 fun1 main

使用反汇编分析代码

1.无参数无返回值

void fun1()
{

}

int main(int argc, char* argv[])
{
	fun1();
	return 0;
}

反汇编分析

image-20240529195435120

2.有参无返回值

代码

void fun2(int x,int y)
{
	x + y;
}

int main(int argc, char* argv[])
{
	fun2(1,2);
	return 0;
}

返汇编分析

image-20240529201202725

3.无参有返回值

代码

int fun3()
{
	return 8+7;
}

int main(int argc, char* argv[])
{
	fun3();
	return 0;
}

反汇编分析

image-20240529202025082

有参数有返回值

代码

int fun4(int x,int y)
{
	return x+y;
}

int main(int argc, char* argv[])
{
	fun4(3,7);
	return 0;
}

反汇编分析

image-20240530161324920

作业:使用两个数相加和三个数相加(应用两个数相加函数)的函数,编写实现五个数相加的函数,分析反汇编

代码

int fun1(int x,int y)
{
	return x+y;
}

int fun2(int x,int y,int z)
{
	int m;
	m = fun1(x,y);
	return fun1(m,z);
}

int fun3(int a,int b,int c,int d,int e)
{
	int m,n;
	m = fun1(a,b);
	n = fun2(c,d,e);
	return m+n;
}
int main(int argc, char* argv[])
{
	fun3(1,3,5,7,9);
	return 0;
}

反汇编分析

duizhan_Sheet1

标签:return,函数,int,char,反汇编,堆栈,fun1,main
From: https://www.cnblogs.com/yee-l/p/18232846

相关文章

  • 【C++小知识】为什么C语言不支持函数重载,而C++支持
    为什么C语言不支持函数重载,而C++支持编译链接过程函数名修饰过程总结在了解C++函数重载前,如果对文件的编译与链接不太了解。可以看看我之前的一篇文章,链接:文件的编译链接想要清楚为什么C语言不支持函数重载而C++支持,有俩个过程:1.编译链接。2.函数名修饰过程。编译......
  • Python2 input函数漏洞利用
    在Python2中,input函数相当于eval(raw_input(prompt))如果输入的数据是一个恶意的表达式,存在任意代码执行的风险实例演示字符串拼接命令执行__import__('os').system('cat/etc/passwd')靶场利用在vulnhubbottleneck靶机中,遇到input漏洞利用的情况#核心......
  • 语法-字符串功能函数
    //C++标凇库提供了丰富的字符串操作函数,下面介绍一些常用的函数。//备注:位置可以看成是字符串的下标,从0开始//获取字符串长度//使用length或size函数来获取字符串的长度。#include<iostream>#include<string>#include<algorithm>#include<cctype>usingnamesp......
  • Web前端 函数
    函数函数是一段可以反复调用的代码块函数的声明function命令:function命令声明的代码区块,就是一个函数。function命令后面是函数名,函数名后面是一对圆括号,里面是传入函数的参数。函数体放在大括号里面。functionprint(s){ console.logs(s);}函数名的提升JavaScr......
  • 【sklearn中LinearRegression,logisticregression函数及其参数】
    文章目录前言一、sklearn中的LinearRegression1.引入库2.LinearRegression的主要参数及其解释3.LinearRegression的使用步骤(1)生成模拟数据(2)创建并训练模型(3)预测与评估二、sklearn中的LogisticRegression1.引入库2.LogisticRegression的主要参数及其解释3......
  • 函数图形绘制
    importmatplotlib.pyplotaspltimportnumpyasnpx=np.arange(0,10,0.0001)y1=x**2y2=np.cos(x*2)y3=y1*y2plt.plot(x,y1,linestyle='-.')plt.plot(x,y2,linestyle=':')plt.plot(x,y3,linestyle='--')plt.savef......
  • 分析webpack编译结果, 实现__webpack_require__函数
    分析webpack编译结果,实现__webpack_require__函数本篇文章我们通过手写来分析一下Webpack打包后的代码,并研究一下Webpack是如何将多个模块合并在一起的首先控制台输入npminit-y初始化一个项目,再输入npmiwebpackwebpack-cli-D安装Webpack在src目录想创建入......
  • FreeRTOS基础(十):FreeRTOS任务状态查询API函数介绍
         本篇博客较为基础,介绍时间片调度和常用的任务状态查询API函数接口使用。目录一、时间片调度简介二、任务状态查询API函数介绍2.1常用API函数总览2.2常用API函数介绍2.2.1获取指定任务优先级2.2.2 改变某个任务的任务优先级2.2.3 获取系统中任务的任......
  • java函数笔记
    Statement.executeQuery和Statement.executeUpdate作用:用于执行SQL查询和更新操作。问题:容易导致SQL注入攻击。解决方法:使用PreparedStatement进行参数化查询。//不安全的做法Statementstmt=connection.createStatement();ResultSetrs=stmt.executeQuery("SEL......
  • enumerate()函数的用法与实例
    enumerate()函数是Python中常用的内置函数之一,用于同时遍历集合对象(如列表、元组、字符串等)的索引和元素。用法:enumerate()函数接受一个可迭代对象作为参数,并返回一个生成器对象,每次迭代生成器时,都会返回一个由索引和对应元素值组成的元组。语法:enumerate(iterable,start......