静态变量与动态变量的定义与区别

2023-11-15

动态变量和静态变量的定义和区别如下:

1.定义上,静态变量比动态变量在多一个关键字static,比如:

动态变量::int i;

静态变量:static int i;

2.动态变量在子程序中,每次调用都会从它的初始值开始调用,而不管他在函数中经历了什么变化;静态变量会从变化后的值继续改变。

main()
{
int i;
for(i=0;i<5;i++)fun();//fun1();
}
void fun()        //输出结果为11111
{
int j;
j++;
printf("%d",j);
}

void fun1()        //输出结果为12345
{
static int j;
j++;
printf("%d",j);
}

但是,我要说明的是,这里的关键点:就是他们的变化是在这个变量再次被(调用)的时候才能有区别,就是说他们被别的函数重新调用时而不是在一个函数内被多次使用,

就像一个叠加的例子:

{

int i;//是动态的

i++;

i++;

i++;

}

                                      i在这个函数中是会持续叠加的,因为他不属于重新被调用,只有当他被另外一个函数调用时才会起到动态变量原有的效果!



本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

静态变量与动态变量的定义与区别 的相关文章

  • 为什么 Hashtable 不允许空键或空值?

    正如 JDK 文档中所指定的 Hashtable 不允许空键或空值 HashMap 允许一个空键和任意数量的空值 为什么是这样 Hashtable 是较旧的类 通常不鼓励使用它 也许他们看到了对 null 键的需要 更重要的是 null 值
  • Java - 将无符号十六进制字符串解析为有符号长整型

    我有一堆十六进制字符串 其中之一是 d1bc4f7154ac9edb 这是 3333702275990511909 的十六进制值 如果执行 Long toHexString d1bc4f7154ac9edb 这与您得到的十六进制相同 现在
  • 在Java Servlet中获取通过jquery ajax发送的参数[重复]

    这个问题在这里已经有答案了 我在网上搜索这个主题 但找不到有效的示例 我会很高兴有人能给我帮助 这就是我测试的 ajax url GetJson type POST dataType json contentType application
  • IBM Websphere MQ - 用于 Tomcat 部署的 EJB 和 MDB 迁移

    我已经为此苦苦挣扎了很长一段时间 我有一个 IBM Websphere MQ 它使用 EJB 和 MDB 以下是配置ejb mdb的地方
  • 从 Android 函数更新 Textview

    有人可以告诉我如何从函数更新 Android Textview 控件吗 我在互联网上进行了深入搜索 看到很多人都问同样的问题 我测试了线程但无法工作 有人有一个简单的工作示例吗 例如 调用一个函数 在循环中运行多次 并且该函数在 TextV
  • java 拖放

    我尝试熟悉java中的拖放 但我发现的所有教程都是 让我生气 我想要的只是从 JList 包含在名为 UserPanel 的自制 JPanel 中 拖动 PublicUserLabel 并将其放入从 JTabbedPanel 继承的自制类中
  • Java 错误和警告列表

    在哪里 如何获得所有 java 和 javac 的错误和警告消息的列表 This http mindprod com jgloss compileerrormessages html我认为页面是您所需要的
  • Android Studio 与 Google Play 服务的编译问题

    我正在运行 Android Studio 0 8 4 并在 Android Studio 0 8 2 上尝试过此操作 我正在运行 Java JDK 1 8 0 11 并尝试使用 JDK 1 8 0 05 每当我尝试构建我的 android
  • 使用正则表达式验证电子邮件的最大长度

    我找到了用于电子邮件验证的正则表达式 a z0 9 a z0 9 a z0 9 a z0 9 a z 2 4 我希望电子邮件的最大长度为 20 个字符 因此我将其更改为 a z0 9 a z0 9 a z0 9 a z0 9 a z 2 4
  • 如何使用 aether 从 Java 找到最新版本的 Maven 工件?

    他们的文档非常薄弱 我无法弄清楚 我找到了部分答案here https stackoverflow com questions 27428068 how to retrieve the latest also snapshot versio
  • 递归取消 allOf CompletableFuture

    如果我有 CompletableFuture
  • 扩展多个类

    我知道 Java 不支持多重继承 因为不允许扩展多个类 我只是想知道我的问题是否有解决方法 我有一个名为CustomAction需要扩展两个抽象类 BaseAction and QuoteBaseAction 我无法更改这些抽象类中的任何一
  • 为休息服务实施 JUnit 测试

    我必须为我的休息服务实现一些 JUnit 测试 例如 这是我的休息服务之一 Path dni fe public class HelloWorld POST Path home Consumes MediaType APPLICATION
  • 在 Eclipse RCP 应用程序中禁用插件贡献

    我经常遇到这个问题 但尚未找到解决方案 每当我编写一个新的基于 Eclipse RCP 的应用程序并包含来自 Eclipse 平台的插件时 我都会 继承 其中一些插件的 UI 贡献 大多数贡献 菜单项 键盘快捷键 属性页 都很有用 但有时我
  • 在 Kotlin 中声明静态属性?

    My Java code public class Common public static ModelPengguna currentModelPengguna public class Common companion object v
  • 向Java类库添加函数

    我使用的 Java 类库在很多方面都不完整 有很多类我认为应该内置其他成员函数 但是 我不确定添加这些成员函数的最佳实践 让我们调用不足的基类A class A public A long arbitrary arguments publi
  • log4j.properties 在 Wildfly 上无法正常工作

    我的类路径中有一个 log4j properties 文件 它位于 APP XX jar log4j properties 位置 我注意到在ear文件中我还可以在lib文件夹中找到log4j 1 2 17 jar 但无论我在 log4j p
  • ebean 映射到 BYTEA 的数据类型是什么?

    我有一个游戏 2 0 2 需要在数据库中存储一些文件的应用程序 我们使用 Ebean 作为 ORM 我相信我的数据库中需要一个 BYTEA 列来存储该文件 但我不确定在我的模型中使用什么数据类型 我应该使用某种Blob 或者只是一个byte
  • 假布尔值=真?

    我在一本书中找到了这段代码 并在 Netbeans 中执行了它 boolean b false if b true System out println true else System out println false 我只是不明白为什
  • Graphics2D setfont() 严重减慢了 java 应用程序的启动速度

    我正在用java制作一个游戏 它每秒刷新60次 每次执行循环时 我都会使用 g2d 来绘制图像和字符串 如果我这样做的话一切都会很好g2d setFont new Font Arial Font PLAIN 8 和抽绳 这将是正常的 但如果

随机推荐

  • 如何使用chrome 浏览器自带截屏?

    1 ctrl shift c 2 ctrl shift p 3 输入 capture 4 选择capture full size screenshot 实现截取整个网页
  • enscape各种材质参数_它来了!Enscape专属素材库!

    ENSCAPE素材库 近两年风靡整个设计的渲染器 一款实时渲染软件Enscape 凭借入门低 成效快 效果逼真 从渲染界脱颖而出 用其他渲染器1 的时间渲出VRAY等老大哥级别90 的效果 作为建筑师的你会怎么选择呢 简单的分析了下渲染界最
  • MySQL connector/C++ 连接mysql效率低下解决

    这个问题 说解决也不算是被解决了 只能是让数据库插入的时候不会有像直接插入一样有那么多的问题了 我的解决方法是 开启mysql的事务 开始我也不知道是不是我的mysql配置优化的问题 WAMP统一安装 无限默认下一步的 在用PHP测试的时候
  • int与byte[]之间进行转换

    如何将int与byte 之间转换 int类型在内存中占4个字节 采用补码方式存储 而一个byte占一个字节 下面有两种方法进行转换 package cn fh vertxboot utils description int与Byte数组转换
  • 苹果app上架流程之傻瓜式教程剖析

    iOS开发者开发好一款APP之后 进行内测后没问题 下一步就是要上架AppStore了 一些开发者不知道该如何上架AppStore 下面 我们来说说iOS上架流程 以及如何快速上架AppStore 工具 1 iOS开发者账号 2 App U
  • Linux内存泄露案例分析和内存管理分享

    一 问题 近期我们运维同事接到线上LB 负载均衡 服务内存报警 运维同事反馈说LB集群有部分机器的内存使用率超过80 有的甚至超过90 而且内存使用率还再不停的增长 接到内存报警的消息 让整个团队都比较紧张 我们团队负责的LB服务是零售 物
  • Xamarin.Forms(移动应用)轮盘抽签软件(Android)

    该文章由我前面的文章https blog csdn net dabo 520 article details 129760956 spm 1001 2014 3001 5501改编而来 它是程序的核心 具体详细可自行前往观看 1 软件开发准
  • 基于Python的顺序表实现一元多项式相加

    具体代码 from operator import itemgetter class PolyList def init self self data def Add self e self data append e def Create
  • JavaWeb案例:实现注册和登录功能

    业务需求分析 在实际开发中 通常会有专门的人去跟客户进行沟通从而了解客户需要什么样的系统 之后由专业的美工将要做的系统以图片的形式表现出来 客户确认后作出一些静态的html demo页面 然后由软件开发人员创建相关数据库 编写代码将该静态页
  • python多线程_Python多线程爬虫,效率真的高

    有些时候 比如下载图片 因为下载图片是一个耗时的操作 如果采用之前那种同步的方式下载 那效率肯会特别慢 这时候我们就可以考虑使用多线程的方式来下载图片 多线程介绍 多线程是为了同步完成多项任务 通过提高资源使用效率来提高系统的效率 线程是在
  • PAT 乙级 1033 旧键盘打字 python

    题目 思路 因为坏键盘的输入是大写字母 遍历输入的字符 将输入字母的字符转换为大写 与坏键盘对比 如果 坏掉 当字母字符不在坏键盘之列 则是小写时 字符才能输出 代码 import sys bad key sys stdin readlin
  • Python语言实现批量视频分帧,保存视频帧

    本篇博客介绍利用python脚本实现视频分帧 并将每一帧保存到本地 主要基于opencv包来实现 在运行代码前确保opencv包已正确安装 下面是主要代码 import os import cv2 videos src path home
  • 大模型落地金融业,想象力在哪?

    金融大模型的难点在于 能否在产业中扎得更深 其颠覆性也更建立在 纵深到产业中去 赋能金融行业的长尾场景发展 以及重拾 金融信任 作者 思杭 编辑 皮爷 出品 产业家 从经济角度讲 整个金融业的数字化进程并非匀速 从技术角度讲 催化剂的出现会
  • TypeError: parse() got an unexpected keyword argument 'transport_encoding'

    import cv2时发现没有这个包 然后就安装一下 结果发现安装时出错了 错误如下 注 我是在pycharm里面配的anaconda 然后利用anaconda安装cv2 发现pip版本太低 我的是9 0 1 新的已经是10 0 1 于是就
  • STM32单片机学习记录3——GPIO(上)输出模式之点亮LED灯

    1 硬件准备 我使用的是市面上常见的黑色开发板 烧入器使用的是正点原子的无线烧入器 普通的烧入器也行 这个无所谓 开发板的原理图我放在下面链接里 我们需要知道相应的LED引脚 2 预期功能 通过函数实现LED灯的闪烁 这里直接采用模块化编程
  • EasyExcel简单使用

    EasyExcel简单使用 EasyExcel是阿里开源的一个Excel处理工具 官网这么介绍 EasyExcel是一个基于Java的 快速 简洁 解决大文件内存溢出的Excel处理工具 他能让你在不用考虑性能 内存的等因素的情况下 快速完
  • 存在重复元素

    存在重复元素 力扣 LeetCode 给定一个整数数组 判断是否存在重复元素 如果存在一值在数组中出现至少两次 函数返回 true 如果数组中每个元素都不相同 则返回 false 示例 1 输入 1 2 3 1 输出 true 示例 2 输
  • 什么是iiot全称

    iiot的全称是Industrial Internet of Things 翻译成中文便是工业物联网 它是指工业生产中各种设备 不论是工厂里的机器设备或者汽车飞机上的发动机 在这些设备上装置传感器 连接到无线网络终端以收集和共享数据 随着传
  • python3:Python 异常处理以及with 语句的使用

    try except else 语句 是处理异常公式 try 是有可能抛异常的代码块 except 抓取异常的类型 else 是指当没有抓到抛错 就运行这块代码 请看下下边的例子 try print 抓取的有可能的代码块 raise IOE
  • 静态变量与动态变量的定义与区别

    动态变量和静态变量的定义和区别如下 1 定义上 静态变量比动态变量在多一个关键字static 比如 动态变量 int i 静态变量 static int i 2 动态变量在子程序中 每次调用都会从它的初始值开始调用 而不管他在函数中经历了什