当前位置: 首页 > news >正文

C++里定义和声明的区别

定义

1、定义只能定义一次,定义多次编译时会报重复定义的错误
2、定义时系统会为变量在内存中分配存储空间
3、定义时可初始化也可不初始化,全局变量和静态变量系统会给一个默认的初始化0

声明

1、声明时不分配内存,但是会生成一个符号,用于在连接阶段找到真正定义的位置,这中间还存在一个符号选择的问题;
在C语言中,函数和初始化的全局变量(包括显示初始化为0)是强符号,未初始化的全局变量是弱符号。
对于它们,下列三条规则使用:
① 同名的强符号只能有一个,否则编译器报"重复定义"错误。
② 允许一个强符号和多个弱符号,但定义会选择强符号的。
③ 当有多个弱符号相同时,链接器选择占用内存空间最大的那个。
C++中没有强弱符号之分

2、可以多次声明,加上extern就好了
3、也可初始化也可不初始化,一般不初始化

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • Java数组的定义及遍历
  • 常见分组加密算法的整体结构
  • 第六章 SqlSession 执行 Mapper 过程
  • 学习Power BI第一步先从安装开始(一)
  • springboot系列--自动配置原理
  • QT 联合opencv 易错点
  • 自动驾驶相关的理论基础
  • C语言-数据结构 无向图迪杰斯特拉算法(Dijkstra)邻接矩阵存储
  • vscode 使用git bash,路径分隔符缺少问题
  • 苍穹外卖学习笔记(三)
  • 深度学习驱动下的字符识别:挑战与创新
  • Vue Router 入门指南:基础配置、路由守卫与动态路由
  • 关于武汉芯景科技有限公司的IIC缓冲器芯片XJ4307开发指南(兼容LTC4307)
  • LabVIEW软件,如何检测连接到的设备?
  • 3.记:Android EditText接收扫码枪输入数据丢失问题
  • 【干货分享】SpringCloud微服务架构分布式组件如何共享session对象
  • 【知识碎片】第三方登录弹窗效果
  • Angular 2 DI - IoC DI - 1
  • CoolViewPager:即刻刷新,自定义边缘效果颜色,双向自动循环,内置垂直切换效果,想要的都在这里...
  • Debian下无root权限使用Python访问Oracle
  • gops —— Go 程序诊断分析工具
  • javascript 总结(常用工具类的封装)
  • magento2项目上线注意事项
  • Spark RDD学习: aggregate函数
  • spring security oauth2 password授权模式
  • supervisor 永不挂掉的进程 安装以及使用
  • yii2权限控制rbac之rule详细讲解
  • 从零开始的无人驾驶 1
  • 如何使用 JavaScript 解析 URL
  • 入门到放弃node系列之Hello Word篇
  • 事件委托的小应用
  • 吴恩达Deep Learning课程练习题参考答案——R语言版
  • 新书推荐|Windows黑客编程技术详解
  • 这几个编码小技巧将令你 PHP 代码更加简洁
  • Prometheus VS InfluxDB
  • 翻译 | The Principles of OOD 面向对象设计原则
  • #include到底该写在哪
  • #laravel部署安装报错loadFactoriesFrom是undefined method #
  • #pragma once与条件编译
  • #我与Java虚拟机的故事#连载11: JVM学习之路
  • (BFS)hdoj2377-Bus Pass
  • (不用互三)AI绘画工具应该如何选择
  • (二)PySpark3:SparkSQL编程
  • (二)十分简易快速 自己训练样本 opencv级联lbp分类器 车牌识别
  • (附源码)ssm捐赠救助系统 毕业设计 060945
  • (附源码)计算机毕业设计SSM疫情居家隔离服务系统
  • (切换多语言)vantUI+vue-i18n进行国际化配置及新增没有的语言包
  • (十)T检验-第一部分
  • (四)opengl函数加载和错误处理
  • (一)Mocha源码阅读: 项目结构及命令行启动
  • .apk 成为历史!
  • .h头文件 .lib动态链接库文件 .dll 动态链接库
  • .NET / MSBuild 扩展编译时什么时候用 BeforeTargets / AfterTargets 什么时候用 DependsOnTargets?
  • .Net Attribute详解(上)-Attribute本质以及一个简单示例
  • .net mvc 获取url中controller和action