变量的声明、定义、赋值和初始化有什么区别

区别有:1、声明、定义、赋值和初始化的作用区别;2、声明和定义两者的联系与区别。声明用于向程序表明变量的类型和名字;定义主要用于为变量分配存储空间;赋值是把对象的当前值擦除,再给一个新值替代;初始化是在创建变量时赋予一个初始值。

变量的声明、定义、赋值和初始化有什么区别-Worktile社区

1、声明、定义、赋值和初始化的作用区别

声明的作用:向程序表明变量的类型和名字。一个文件如果想使用别处定义的名字,则必须包含对那个名字的声明。如果在当前编译语句的前面中没有找到相应的变量或者函数,也会在当前文件的后面或者其它文件中定义。

定义的作用:主要用于为变量分配存储空间,同时负责创建与名字相关联的实体。当然,定义也会规定变量的类型和名字,还申请存储空间,也可能为变量附一个初始值。

赋值的作用:把对象的当前值擦除,而已一个新值替代。

初始化的作用:创建变量时赋予一个初始值,即从无到有。

2、声明和定义两者的联系与区别

声明和定义存在一定联系,即定义是一种特殊的声明,因为当定义变量时我们也向程序表明了它的类型和名字。但声明不是定义,可以通过使用extern关键字声明变量而不定义它。不定义变量的声明包括对象名、对象类型和对象类型前的关键字extern。

声明和变量又存在一些明显区别:首先,程序中变量可以声明多次,但只能定义一次;其次,变量声明不分配空间,而变量定义分配空间。

总结来说,声明一个变量只是将变量名标识符的有关信息告诉编译器,使编译器“认识”该标识符,但声明不一定引起内存的分配。而定义变量意味着给变量分配内存空间,用于存放对应类型的数据,变量名就是对相应的内存单元的命名。

延伸阅读:

变量的类型

C语言中,变量分为全局变量和局部变量;也可以这样分:自动变量,静态变量.前者是按变量作用范围来分的,而后者是按变量存储方式来分的。

在C语言中,如果按存储占用空间来分,包括:

整型变量(代码为int),整型变量包括长整型变量(代码为long int)以及短整型变量(代码为short int),字符型变量(代码为char),浮点型变量(代码float)等。当然还有数组,结构体变量等.但新手需要注意的是,每一种变量类型最终都对应的格式字符.如:%d。

C语言还有一个重要变量:指针变量.它存放的值是一个内存地址。C语言中变量名是有大小写之分的,如SUN与sun就是两个不同的变量名。

另一点,声明变量时,可以不用声明就直接赋值来决定变量类型的语言,这类语言变量的声明通常被称为弱类型,而如(c++等)必须先声明,后使用,而且声明时必须确定变量类型,这种就是严格的数据类型。

变量有两种类型:属性变量和用户自己建立的变量。

文章标题:变量的声明、定义、赋值和初始化有什么区别,发布者:小编,转载请注明出处:https://worktile.com/kb/p/38520

(2)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小编小编认证作者
上一篇 2023年2月16日 下午11:08
下一篇 2023年2月16日 下午11:11

相关推荐

  • 为什么谷歌打不开vscode

    由于制作一篇4000字的详细文章远远超出了我的即时生成限制,我将展示一个针对您的请求的缩短版示范,介绍文章的结构和内容撰写方法。 无法在谷歌上打开Visual Studio Code(VSCode)通常是受多种因素影响的结果,这里概括了几个关键原因:网络问题、浏览器兼容性问题、VSCode在线版本的…

    2024年4月3日
    10100
  • 项目人员管理与沟通怎么写

    项目人员管理与沟通应该包括:一、明确目标;二、定期沟通;三、选择正确的沟通工具;四、使用简单的语言;五、多样化沟通方式。在开始任何项目之前,项目经理应该确保明确项目的目标和范围,并将其记录在项目计划中。 一、明确目标 在开始任何项目之前,项目经理应该确保明确项目的目标和范围,并将其记录在项目计划中。…

    2023年4月29日
    37800
  • 计算机devops是什么

    计算机 DEVOPS 揭示了一种实践和哲学,旨在促进软件开发(Development)与信息技术运维(Operations)的协作与整合,实现自动化流程、加速产品交付、提升系统的可靠性、稳定性及安全性。1、追求软硬件项目快速迭代与优化、2、推动文化与工具革新以实现生产效能的飙升、3、通过细致监控提升…

    2024年3月26日
    6000
  • vscode为什么没有保留文件

    VSCode没有默认设置为保留文件是为了保持编辑器的轻量级性质、为用户提供更自由的配置选项、避免不必要的磁盘写入、以及鼓励良好的版本控制实践。对于需要更改这一设置的用户,VSCode提供了可自定义的工作空间和用户设置,包括自动保存功能,用户可以根据需求开启或调整保存文件的时间间隔以及触发条件。自动保…

    2024年4月3日
    8500
  • saas和paas区别

    SaaS和PaaS的区别主要体现在:1、服务形式不同;2、用户关注点不同;3、实现目标不同;4、使用场景不同;5、成本控制不同。总的来说,SaaS是针对最终用户的应用服务,而PaaS则是为开发者提供的平台服务。 一、服务形式不同 SaaS(Software as a Service)即软件即服务,是…

    2023年5月24日
    4.8K00
  • 为什么vscode没有联想了

    Visual Studio Code(VSCode)没有代码联想是因为 插件问题、设置问题、工作区问题、损坏的安装 或者其它一些有关的系统错误。插件问题 往往是最常见的原因,而且也是相对容易处理的。许多编程语言和框架在VSCode中的智能提示特性依赖于特定插件,如果这些插件没有安装、未启用或出现兼容…

    2024年4月3日
    17700
  • 函数式语言的缺陷是什么

    缺陷是:1、没有纯粹的函数式的非排序的字典或集合Set;2、没有纯函数式弱哈希表;3、没有纯函数的并发集合;4、惯性巨大;5、会产生太多的分配设计;6、纯函数式编程实践的性能不行;7、函数式编程很难解决实际问题。 1、没有纯粹的函数式的非排序的字典或集合Set 纯函数或持久数据结构,比如那些在Oka…

    2023年2月22日
    60400
  • 读内核源码的意义有哪些呢

    意义有:1、对计算机系统的全貌有更深入的了解;2、让操作计算机成为一种令人愉快的体验;3、能够加深对知识的理解;4、提升技术人员自身的水平。掌握了作为计算机系统核心部分的内核,不仅对操作系统,对计算机的全貌也会有更为深入的认识。 1、对计算机系统的全貌有更深入的了解 掌握了作为计算机系统核心部分的内…

    2023年2月6日
    38900
  • 建筑工程项目经理如何管理

    建筑工程项目经理通过积极的沟通、严格的质量控制、高效的团队管理、细致的计划与调度来管理工程项目。在这些关键要素中,积极的沟通尤为重要,因为它是确保项目顺利进行、预算控制以及时解决问题的基石。 积极的沟通涉及建立开放、透明的沟通渠道,确保所有参与方,包括业主、承包商、供应商以及工程团队,都可以轻松地交…

    2024年4月11日
    5600
  • 如何评估数据分析模型的性能

    文章聚焦于评估数据分析模型性能的方法,并列举了以下四大核心评估指标:1、准确度Accuracy;2、召回率Recall;3、精确率Precision;4、F1 Score。每一项指标均有助于衡量模型表现的不同方面。准确度反映了模型正确分类的比例,召回率揭示了模型识别正类的能力,精确率表示预测为正类中…

    2023年11月21日
    65600

发表回复

登录后才能评论
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部