c语言cis,c语言小白学习历程第五篇

学习目标:

难的咱也看不懂,先把简单的看了再说,加油L 冲冲冲!

学习时间:

2020年11月1日

学习产出:

回调函数学习:

回调函数说白了就是一个通过函数指针调用的函数。如果你把函数的指针Callback(地址)作为参数传递给另一个函数,当这个指针被用来调用其所指向的函数时,我们就说这是回调函数。

#include

int Callback_1()

{

printf(“Hello, this is Callback_1

”);

return 0;

}

int Handle(int (*Callback)())

{

Callback(); //回调函数

}

int main()

{

Handle(Callback_1);

return 0;

}

静态库:指编译链接时,把库文件的代码全部加入到可执行文件中,因此生成的文件比较大,但在运行时也就不需要库文件了[一般格式xxx.a的文件]

动态库:在编译连接时,没有把库文件的代码全部加入到可执行文件中,而是在程序执行时由运行的链接文件加载库,这样节省系统开销[一般格式xxx.so的文件]

gcc在编译时默认的是使用动态库

静态全局变量:只有在定义它的文件内有效[例如在其他文件使用extern关键字也无法访问]。

全局变量:在整个工程文件内都有效[例如使用extern关键字在其他文件内就可以使用]。

静态局部变量:只有在定义它的函数内有效,且程序分配一次内存,函数返回后变量不会消失。

局部变量:定义它的函数内有效,函数返回后局部变量失效

内存四区:

栈区:由编译器自动分配释放,存放函数的形参,局部变量等,自动释放。

堆区:由程序员手动分配释放[动态内存申请和释放]。

全局区:用于存放全局变量和静态变量,里边细分有一个常量区,存放字符串常量和其他常量。

代码区:存放CPU执行的机器指令。该区域通常是制度的,防止程序意外地修改它的指令。

bea313debdbd903e286239d8e3674844.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/520732.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

邱跃鹏:软硬件一体化、Serverless、智能化是云计算三大趋势

近日腾讯公司副总裁、腾讯云总裁邱跃鹏在“腾讯Techo开发者”大会上致辞。他表示,云计算未来有三大趋势,即软硬件一体化(Cloud Native Hardware)、无服务器计算(Serverless)和智能化(Smart&…

阿里云喻义:十年牧码,从码农走向工程师的进化之路

有人会问,码农和工程师有区别吗?有什么区别?相信每个人都有不同的理解。 “你敲下的每一行代码,你想过他会如何在计算机上运行吗?你想过你的这一行代码会产生多少cache miss吗?你想过你的这段代码分支预测…

idea出现 Error:(1, 16) java: 非法字符: '\u0a0d'

异常案例: 解决方案:可以将文件的编码格式由utf-16 变为utf-8就可以了。

android数字滚动动画,Android超简单实现金钱滚动效果

目录目录效果展示实现原理利用ValueAnimator将数值从0一直增长到你所需要展示的数值,然后使用TextView将增长过程中的数值不断展示即可实现金钱的滚动效果。ValueAnimator基础讲解ValueAnimator是Android中用来实现属性动画的类,它是Android3.0后才引入的…

因为信仰,油画专业的他自学开发进击阿里技术P9

大约在1年以前,阿里云视频云团队来了一位热心和气、爱好广泛的老干部新同学,他就是资深技术专家郝冲,花名和招,寓意“和气招财”。 有人说程序员只喜欢安静地写代码,和招偏偏一个户外运动爱好者。他擅长滑雪&#xff…

聚焦技术和实践,腾讯全面揭秘基础设施和大数据演进之路

“开发者是推动技术发展的主力军,数字社会向前的每一步,都离不开广大开发者。作为数字化转型助手,腾讯云将秉持“开源、共享、创新”的三大理念持续助力开发者的个人成长和价值创造。目前腾讯云已经服务了数百万开发者,给到开发者…

Apache JMeter 测试 HTTP接口

一、设置基础组件 1. Apache JMeter 测试 HTTP接口流程 原则:简单的http请求而已,例如:PostMan测试一样的 1.添加一个线程组 2给线程组添加一个取样器,用来发送HTTP请求 3.给线程组添加一个监听器(观察结果树),用来查…

MaxCompute2.0新功能介绍

在过去的两年内,MaxCompute进行了翻天覆地的重构,从1.0版本全面升级到了2.0版本。而大家或许对于MaxCompute 2.0的一些新特性并不了解,在本文中,MaxCompute技术专家秋鹏就为大家详细介绍MaxCompute 2.0的新特性。 本文主要围绕以下…

android顶部导航高度,Android特效——————底部/顶部导航条(Fragment+ViewPaper+XTabLayout)...

初次使用xtablayout和viewpaper2.所以就弄了最基础的导航条一、效果二、代码配置环境【在bulid.gradle中添加以下代码】implementation ‘androidx.viewpager2:viewpager2:1.0.0-alpha02‘implementation‘com.androidkun:XTabLayout:1.1.4‘按钮点击切换图片【几个点击按钮图片…

Apache JMeter 压试 HTTP接口

压测模拟100个用户连续发10次起请求 总请求数量线程数*循环次数1. 设置线程数 2. 查看服务端输出 3. 查看结果树 4. 查看聚合报告

Apache孵化器主席Justin Mclean:如何成为Apache顶级开源项目

近日,Apache孵化器主席、Apache基金会成员、Dubbo & RocketMQ等开源项目的导师Justin Mclean来到阿里巴巴西溪园区,与众多开发者分享了如何打造一个Apache顶级项目,以及项目孵化过程会遇到的一些盲点和挑战。 经Justin Mclean先生本人允…

正式开源TKE和TBase,腾讯正成为大数据领域开源最全面厂商

在11月6日召开的Techo开发者大会上,腾讯云副总裁、腾讯数据平台部总经理蒋杰博士正式对外披露腾讯大数据平台10年技术演进历程。 经过10年的积累,腾讯大数据平台的算力资源池目前已有超过20万台的规模,每天实时数据计算量超过30万亿条&#…

服务化改造实践(三) | Dubbo + Zipkin

随着业务的发展,应用的规模不断的扩大,传统的应用架构无法满足诉求,服务化架构改造势在必行,以 Dubbo 为代表的分布式服务框架成为了服务化改造架构中的基石。随着微服务理念逐渐被大众接受,应用进一步向更细粒度拆分&…

基于TableStore的亿级订单管理解决方案

一、方案背景 订单系统存在于各行各业,如电商订单、银行流水、运营商话费账单等,是一个非常广泛、通用的系统。对于这类系统,在过去十几年发展中已经形成了经典的做法。但是随着互联网的发展,以及各企业对数据的重视,…

mybatis-plus的 mapper.xml 路径配置的坑

mybatis-plus今天遇到一个问题,就是mybatis 没有读取到mapper.xml 文件。 #实体扫描,多个package用逗号或者分号分隔 mybatis-plus:typeAliasesPackage: com.gblfy.springboot.mybatisplus.entitymapper-locations:- classpath*:com/gblfy/springboot/*…

加速布局无服务器生态,腾讯云与Serverless.com达成全球战略合作!

在云计算技术领域,“Serverless(无服务器)”作为一种新型的软件设计架构正在快速崛起。作为继虚拟机、容器后的第三代通用计算平台,Serverless技术也一直是腾讯云原生的重点发力领域。 近日,在由腾讯云主办的首届Tech…

阿里云周源:一篇文章读懂四代视频加密技术演进

在刚刚圆满落幕的LiveVideoStackCon峰会上,阿里云高级技术专家周源进行了《视频加密和DRM的实施实践》主题分享。周源,有十多年音视频研发经验,之前在淘宝视频负责开放平台,目前在阿里云视频云部门负责媒体处理,在大规…

云原生数据库如何打造业务弹性

云计算带来了业务弹性上的极大优势,阿里云数据库高级产品专家时慢从应用架构的变迁,客户实战案例,业务分析等方面详细介绍POLARDB,及如何利用POLARDB设计互联网创新型应用的数据库架构。 应用架构的变迁——为什么我们需要超级MyS…

SpringMVC 集成 mybatisPlus

文章目录一、基础配置1. pom2. web.xml二、配置文件2.1.spring-context.xml2.2. spring-datasource.xml2.3. spring-mvc.xml2.4. jdbc.properties2.5. logback.xml三、基础类3.1. 实体类3.2. 接口类3.3. 接口映射xml3.4. service接口3.5. 接口实现类3.6. 控制层四、数据库方面4…

四大开源项目联合发布 腾讯已成Github全球贡献前十公司!

近日在Techo开发者大会上,腾讯正式对四大重点开源项目进行了联合发布,包括分布式消息中间件TubeMQ、基于最主流的 OpenJDK8开发的Tencent Kona JDK、分布式HTAP数据库 TBase,以及企业级容器平台TKEStack。 截至目前,腾讯已经在Gi…