关于C语言——对一个数据定义的两种属性

对一个数据的定义,需要去定义它的两种属性:数据类型和存储类型。

对于数据类型主要有:

  • int
  • char
  • long
  • float
  • double

对于存储类型有这四种:

  • auto

  • static

  • register

  • extern


平时使用的时候一般不标明存储类型,而存储类型主动是为auto,自动变量,在函数内去定义。

如果定义一个数据它为静态局部或外部整形变量那就是:

static int a;


变量分为局部变量和全局变量

按作用域角度来分

从++局部变量++中采用的存储类别来说有三种:

  1. 自动变量,也就是动态局部变量(auto)
  2. 静态局部变量(static)
  3. 寄存器变量(register)

从++全局变量++中采用的存储类别来说分为两种。

  1. 静态外部变量(static)
  2. 外部变量,非静态的(extern)

按变量的生存周期来分

从**++动态存储++**中采用的存储类别来说有三种:

  1. 自动变量(auto)
  2. 寄存器变量(register)
  3. 形式变量

从**++静态存储++**中采用的存储类别来说分为三种。

  1. 静态外部变量(static)
  2. 静态局部变量(static)
  3. 外部变量(extern)

从变量存储的位置来分

从++局部变量++中采用的存储类别来说有三种:

  1. 静态局部变量(static)
  2. 静态外部变量(static)
  3. 外部变量(extern)

++从内存中动态存储区:++

自动变量和形式参数

++从CPU中的寄存器:++

寄存器变量(register)

相关推荐
学困昇14 小时前
C++11中的右值引用和移动语义
开发语言·c++
有梦想的攻城狮14 小时前
初识Rust语言
java·开发语言·rust
鱼骨不是鱼翅14 小时前
力扣hot100----1day
python·算法·leetcode·职场和发展
程序猿_极客14 小时前
【2025 最新】 Python 安装教程 以及 Pycharm 安装教程(超详细图文指南,附常见问题解决)
开发语言·python·pycharm·python安装以及配置
2501_9412357314 小时前
C++中的装饰器模式变体
开发语言·c++·算法
2501_9411112514 小时前
基于C++的爬虫框架
开发语言·c++·算法
小欣加油14 小时前
leetcode 429 N叉树的层序遍历
数据结构·c++·算法·leetcode·职场和发展
b***666114 小时前
Python 爬虫实战案例 - 获取社交平台事件热度并进行影响分析
开发语言·爬虫·python
民乐团扒谱机14 小时前
【元启发算法】SMA黏菌算法:当自然智慧走进代码世界
算法
ModestCoder_14 小时前
Tokenization的演进:从NLP基石到多模态AI的“通用翻译器”
开发语言·人工智能·自然语言处理·机器人·具身智能