第六章 变量的存储类型

SAP 系统和银行系统通过 SM2 加密算法进行集成 SM2 是基于椭圆曲线离散对数问题(ECDLP)的一种公钥密码算法。椭圆曲线加密的核心原理,是利用了一个数学难题:在椭圆曲线群上,已知曲线上两点的运算结果,逆向推导出这两个点的具体信息是非常困难的。这样的复杂度使得基于椭圆曲线的密码体制比传统的 RSA 更加难以破解。在 SM2 加密中,公钥和私钥的生成与传统的椭圆曲线加密类似。选择一个椭圆曲线和一个基点 P。使用私钥 d,计算公钥 P’ = d * P。私钥 d 保密,而公钥 P’ 可公开分发,用于加密数据。 阅读详情

内存的分区

内存分为物理内存、虚拟内存
物理内存:实实在在的存储设备
虚拟内存:操作系统虚拟出来的内存

操作系统会在物理内存和虚拟出来的内存。
操作系统会在物理内存和虚拟内存之间做映射。
32位系统下,每个进程的寻址范围是4G 0x00 00 00 00 ~ 0xff ff ff ff
在写程序的时候,看到的都是虚拟内存地址。

1、堆

在动态申请内存的时候,在堆里开辟内存。

2、栈

只要存放局部变量

3、静态全局区

3.1、未初始化的静态全局区

静态变量(定义变量的时候,前面加static修饰),或全局变量,没有初始化的,存放在此区

3.2、初始化的静态全局区

全局变量、静态变量、赋值后,存放在此区

4、代码区

存放程序代码

5、文字常量区

存放常量的

普通局部变量(自动变量)

定义在函数内部

auto int a;//auto可以省略,表示动态分配内存

作用范围:在函数中定义的,在函数中有效。在复合语句中定义的,在复合语句中有效。
生命周期:在函数调用的时候才取分配内存,调用结束之后,释放内存。

静态局部变量

局部变量前面加static
作用范围:在函数中有效
生命周期:第一次调用的时候,分配内存空间赋值,函数结束后,不会释放,直到程序结束。

定义普通局部变量,不赋值,值是随机的。
静态局部变量,不赋值,编译时自动赋初值0或空字符‘\0’.

普通的全局变量

在函数外部定义的变量

int num = 100;
int main()
{
}

作用范围:在程序的所有地方。
声明周期:在程序运行的整个过程,一直存在,知道程序结束。

静态全局变量

普通全局变量前面加static
作用范围:只能在它定义的.c文件中使用
生命周期:在程序运行的整个过程,一直存在,知道程序结束。

【Flink on k8s】- 1 - Flink Kubernetes Operator 简介 2023 Flink Kubernetes Operator 可以与 Kubernetes 的其他功能和工具集成,可以帮助用户快速定位和解决问题。Flink Kubernetes Operator可以在Kubernetes上实现高可用性,以确保 Flink 集群的稳定性和可靠性。Flink Kubernetes Operator 可以快速地部署 Flink 集群,而无需手动配置和管理集群。Flink Kubernetes Operator可以将Flink集群与其他应用程序隔离,以避免资源争用和干扰。 阅读详情

相关推荐

量子密钥分发系统的设计与实现(二):光路子系统初步讨论

本文主要对量子密钥分发系统中的光路子系统方案进行了讨论。

量子领域相关话题 2406

C语言 第六章 补充:函数应用举例&变量的作用域和存储类型

C语言 第六章 补充:函数应用举例 例1.一个班级有N名学生,每个学生有两门课程,实行百分制考核,要求分别统计各个等级的人数,并将分等级统计的结果保存到一维数组中。将判断等级的过程改由用户函数实现。 #include<stdio.h> #define N 6 int main() { int f(int,int); int i,s1,s2; static int r[5]; for(i=0;i<N;i++) { printf("输入两门成绩:"); scanf("%

big_pig_head的博客 444

避开STM32H7的‘保护陷阱’:从Option Byte机制深度解析读写保护原理与预防

本文深度解析STM32H723VGT6的Option Byte保护机制,详细讲解RDP读保护和WRP写保护的工作原理及配置方法,并提供硬件设计防御策略和软件预防性编程技巧,帮助开发者避免误触发保护机制导致芯片锁定的问题。

weixin_33686714的博客 441

C语言之路 第六章 再论数据类型

第六章 再论数据类型 成事者不可狭于器 在第一章中我们看到,主要的数据类型有三种----字符型、整型和浮点型。很多人可能会觉得比较奇怪,C语言程序员是如何用这么少的数据类型去处理事物的。事实上,C语言程序员并不感到匮乏。这三种数据类型可以派生出很多数据类型。理论上,从C语言中派生出来的数据类型是没有限制的。一个C语言程序员总是可以创造他所需要的数据类型,如结构。不仅如此,主要的数据类型

linghunduoshou的专栏 525

51单片机AHT20-21源代码

传感器输出经过 标定的数字信号,标准 I 2 C 格式。AHT20 配有一个全新设计的 ASIC专用芯片、一 个经过改进的MEMS半导体电容式湿度传感元件和一个标准的片上温度传感元件,其 性能已经大大提升甚至超出了前一代传感器的可靠性水平,新一代温湿度传感器, 经过改进使其在恶劣环境下的性能更稳定。但是现在网上的大多数原码都是针对stm32等的这种多位单片机,而我们都知道51单片机是8位单片机,无法对浮点数进行运算,对32位的整数计算有时候也不是很准确,所以我对网上stm32的例程进行了修改。...

wd0710的博客 4545

Python爬虫技术:使用Playwright和Twitter API v2高效获取Twitter/X数据完全教程

遵守规则:始终遵循Twitter的使用条款和速率限制错误处理:实现完善的错误处理和重试机制数据质量:进行数据清洗和验证性能优化:使用异步处理和合理的延迟设置可维护性:模块化代码,便于维护和扩展。

2201_76125261的博客 671

第六章、函数(下)

对函数的详细笔记总结

一眼万年 2114

Matlab实现雷达波位编排

1 简介 %本程序用于雷达球坐标系到正弦空间坐标系的转换,以及相控阵雷达的波位编排。 2 完整代码 ​%070228添加波位数据保存clear allclose allclc%波束宽度,单位:度BeamWidth = 3.6;theta05 = round(sin(BeamWidth*pi/180)*1000)/1000;%雷达作用空域AZ = [-15 15]; %方位角范围(雷达球坐标系),单位:度EL = [0 30]; %俯仰角范围(雷

qq_59747472的博客 2478

c语言嵌套函数内的变量,C语言函数的嵌套调用变量的存储类型编译预处理解读.ppt...

C语言函数的嵌套调用变量的存储类型编译预处理解读上讲内容回顾 函数的概念 函数的定义及调用 函数的返回值 函数的参数及其传递方式 本讲主要内容 函数的嵌套调用 变量的存储类型 全局量和局部量 内部函数和外部函数 编译预处理 程序的组合(自学) 标准库函数(自学) 函数的嵌套调用 C语言中的函数定义是互相独立的,函数和函数之间没有从属关系,一个函数既可以被其它函数调用,也可以调用别的函数,这就是...

weixin_42349214的博客 305

【打卡帖】7日玩转ESP32——(第4日) 串口的输入输出

【福利帖】7日玩转ESP32——(第4日) 串口的输入输出

1374

读懂ARM汇编程序,你只差这篇!保姆级教程(附完整示例剖析)!

ARM汇编中的符号、标号、伪操作有哪些?C语言和汇编语言如何混合编程?GNU ARM汇编和ARM汇编的区别有哪些?

车载系统攻城狮 1万+

第六章 函数

第六章 函数 第一节 函数的概念和模块化程序设计 一、函数的概念 函数是一个可以反复执行的程序段。在一个程序中,如果需要多次执行某项功能或操作,则可 以把完成该功能或操作的程序段从程序中独立出来定义为函数,而原来程序中需要执行该功能或操 作时可以通过函数调用来代替,以达到简化程序的目的。 1. C 语言函数的特点 C 语言的函数具有以下特点: 1)一个 C 程序由一个或多个函数组成,其中必须有且只能有一个 main 函数(称为主函数)。 2)C 程序的执行从主函数开始,如果在主函数中调用其他函数,调用后返

深耕网络安全领域,聚焦护网行动(HW)、渗透测试、等级保护(等保)、CTF 竞赛四大核心方向,提供技术干货、实战经验与行业洞察。 6422

【Zephyr存储专题】09_LittleFs文件系统操作

本文档旨在为开发者介绍Zephyr下Littlef's文件系统相关配置使用指南

zero的博客 3245

C语言 第六章 函数

return 返回值;局部变量:变量作用域在局部范围内(只能在{}内使用),除了作用域无法使用。函数调用,实参将值传给形参,形参是实参的副本,形参改变不会影响实参的值。(1)函数的定义 :函数类型 函数名 (数据类型 形参1,数据类型 形参2)返回值:函数的运行结果,如果与函数类型不一致,则将结果强制转换为函数类型。如果被调函数在主调函数下方定义,则需要被调函数声明。(1)形式1 : int a[5] = {1,2,3,4,5,};主调函数调用被调函数,被调函数运行结束后回到主调函数继续向下执行。

weixin_72130702的博客 263

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

C语言之第六章 常量 宏 函数

1. 宏定义 格式:#define PI 3.14 (#define+ 常量名 + 值) PS: 宏定义的常量名要大写,宏定义没有赋值符号(=),也不需要数据类型,结尾也没有分号。 宏:只是单纯文本替换。 宏定义时,常量名后面是一个整体,定义时需要注意。 例如:            错误:            #defineNUMBER 150+10  //这是错误的定义   

lct710992308的博客 833

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

第六章总结

第六章总结:1.数组:数组元素在内存中顺次存放并且地址是连续的 (1)数组名字是数组首元素的地址 (2)数组名是一个常量(不可以写成:a++)2.对象数组: 声明:类名 数组名[元素个数]; 访问方法:通过下标访问 数组名[下标].成员名(数组中每一个元素对象被创建时,系统都会调用类构造函数初始化该对象 通过初始化列表赋值。每个对象被删除时,系统都要调用一次析构函数) 3. 指针...

weixin_34409741的博客 181

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

C语言程序设计教程_第六章:函数_笔记整理

考前复习整理

weixin_51724996的博客 414

《C++性能优化指南》 linux版代码及原理解读 第六章 优化动态分配的变量

本章主要通过讲解C++中的变量(变量的生命周期、所有权等),以及变量相关的操作(分配、析构、智能指针托管)所产生的开销对性能的影响等,通过深入介绍相关的流程,解释其中所产生的开销。以及如何从多个方面减少变量所带来的开销,从而对性能进行优化。(通过代码解释为什么智能指针的运行效率可能比普通指针慢几百倍)

v俊逸 612

C++语言程序设计——知识点复盘(第六章 数组、指针与字符串)

目录 数组 数组的初始化 数组作为函数参数 对象数组 指针 内存空间的访问方式 指针变量的声明 与地址相关的运算“*”和“&” 指针的赋值 指针运算 用指针处理数组元素 例.设有一个int型数组a,有10个元素。用三种方法输出各元素 例.利用指针数组输出单位矩阵 用指针作为函数参数 例.读入1个浮点数,将整数部分和小数部分分别输出 指针类型函数 指向函数的指针 例.函数指针实例 对象指针 this指针 指向类的非静态成员的指针 指向类的静态成员的指针 .

Nash_SP的博客 638

c语言周林答案,C语言程序设计实训教程教学课件作者周林ch06函数课件.ppt

C语言程序设计实训教程教学课件作者周林ch06函数课件.ppt1)自动变量(auto变量) 局部变量,如果不专门声明存储类别,都是动态地分配存储空间的 调用函数时,系统会给局部变量分配存储空间,调用结束时就自动释放空间。因此这类局部变量称为自动变量 自动变量用关键字auto作存储类别的声明 2. 局部变量 第六章 函 数 6.6 变量的存储类型及作用域 2)静态局部变量(static局部变...

weixin_42507411的博客 147

00342高级语言程序设计(C语言)目录 第六章 函数

第一节 函数的概念和模块化程序设计 第二节 函数声明 第三节 函数的参数和数据传递方式 第四节 变量的存储类型和作用域 第五节 函数的嵌套调用和递归调用 第六节 常用库函数 第七节 函数的程序设计实例

grace♥的博客 399

第四章 函数

1 注意:返回的时候 (1)char*f(char*a) {char*bn} 如果返回b没有意义:自定义函数的变量空间最后会撤销,地址没有作用 返回a有意义,重新把传入的地址再返回 2 函数嵌套调用 y=max(max(a,b),c);

m0_51952128的博客 189

第六章 递归,内联,重载,作用域和存储类型

其实西安交大的老师们 上课没什么趣味性,开始听着挺不习惯的。 但是老师们人真的都很好,问的问题基本都认真帮忙解答的~很热心~还是点个赞 递归还是很简单,毕竟搞了很多题目了。 内联。。讲实话  写代码的时候 基本没用过inline。。 不过可以提高程序运行效率 这主要是因为调用函数要搞个栈保存函数返回地址等等 调用结束 恢复现场 浪费空间 ,时间 而内联则是 直接把代码块复制过来 没有上述操作

小木匠QvQ 575

第六章数组

一维数组 数组: 一组具有相同类型的变量的集合 数组名:标识这组相同的数据的名字 数组元素:构成数组的每个数据项 定义: 存储类型 数据类型 数组名[正整数]; 用sizeof(a)来获得数组a所占字节数 使两个数组的值相等(通过循环语句赋值实现) 二维数组 二维数组的定义 初始化时,如果初始化列表中的初值个数少于数组元素的个数,系统自动给后面的元素初始化为0 向函数传递数组参数 字...

soulmate______的博客 229

第六章:Multi-Backend Configuration

通过本章,你已掌握:✅ 如何通过配置文件和环境变量切换后端✅ 理解抽象层如何隔离具体实现✅ 让代理像变形金刚一样灵活应对不同环境下一章我们将学习如何保护代理的数据安全——工作区安全,教你为代理设置“安全防护罩”!

qq_51279133的博客 1081

7.2 C语言变量的存储类别

变量的存储类别分为自动、静态、寄存器和外部这四种。其中后两种我们暂不介绍,主要是自动变量和静态变量这两种。 函数中的局部变量,如果不加 static 这个关键字来修饰,都属于自动变量,也叫做动态存储变量。这种存储类别的变量,在调用该函数的时候系统会给他们分配存储空间,在函数调用结束后会自动释放这些存储空间。动态存储变量的关键字是 auto,但是这个关键字是可以省略的,所以我们平时都不用。

芝麻软件工作室的专栏 495
上一篇: 第五章 函数
下一篇: 第七章 指针
七号公园的忧伤
七号公园的忧伤 新星创作者: Java技术领域 新星创作者: Java技术领域
博客等级 码龄6年 4857粉丝 79原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

七号公园的忧伤

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值