C 语言的类型(c语言的类型和编码规则是什么)

yumo66610个月前 (05-08)技术文章65

C 语言的类型

C 语言中存储在对象中的值或者由函数返回的值,其含义取决于用于访问它的表达式。声明为对象的标识符是最简单的这类表达式,类型即由标识符给出。类型分为对象类型(描述对象的类型)和函数类型(描述函数的类型)。

C 语言中的类型可归纳为以下四种,包括:

  • 基本数据类型

基本数据类型包括标准整型以及扩充整型(依实现定义,比如以下划线开头)。

例如,用 char、int、long 等定义的变量都是整型变量。

此外,实数浮点类型和复数浮点类型也属于基本数据类型。

例如,用 float、double 等定义的变量都是浮点类型。

  • 枚举

枚举类型用关键字 enum 来定义,你可以将这种类型的变量用作整型变量。

  • void

void 是一种特殊类型,由空值集合构成。

如果以 void 作为函数参数,则意味着该函数没有参数;

如果以 void 作为函数返回类型,则意味着该函数不会返回任何值。

  • 衍生数据类型

衍生数据类型是一个大家族,包括数组、结构体、联合体、函数、指针和 atomic 类型。

基本数据类型

char


signed char、short int、int、long int、long long int

标准有符号整型

_Bool

标准无符号整型

unsigned char、unsigned short int、unsigned int、unsigned long int、unsigned long long int

float、double、long double

实模式浮点类型

float _Complex、double _Complex、long double _Complex

复数类型

其它分类

如果以不同的视角来看,C 语言中以上数据类型还可以重新分类,比如:

  • 字符类型

包括:char、signed char 和 unsigned char

  • 整数类型

包括:char、有符号整型、无符号整型和枚举类型

  • 算数类型

包括:基本类型和枚举类型

  • 标量类型

包括:算术类型和指针类型

  • 聚集类型

包括:数组和结构体

注:联合体之所以不是聚集类型,是因为这种类型的变量在同一时间内只能有一个成员有值。

按完整性分类

按照类型定义是否提供了足够的信息,C 语言中的类型还可划分为完整类型和不完整类型(比如 void、int a[])。类型是完整的还是不完整的,可能在翻译单元某个点上发生变化。

#头条创作挑战赛##C语言每日小知识#

相关文章

C++基础知识总结(超详细总结)(c++基础与深度解析)

C++基础1 C++特点C++在C语言基础上引入了面对对象的机制,同时也兼容C语言。C++有三大特性(1)封装。(2)继承。(3)多态;C++语言编写出的程序结构清晰、易于扩充,程序可读性好。C++生...

C语言指针基础知识全面总结(c语言指针的定义和使用)

以下是以列表形式总结的C语言指针相关知识:1. **基本概念**- 地址:每个变量在内存中都有一个唯一的地址。- 指针:一种特殊类型的变量,用于存储其他变量的内存地址。2. **指针变量**- 定义:...

每日学习“C·语言”是什么呢?(c的语言是什么)

以下是关于 C 语言的详细信息:一、C 语言的基本特点高效性:C 语言是一种接近硬件的编程语言,它允许程序员直接访问内存地址和操作硬件,因此在性能上具有较高的效率。例如,系统级编程和嵌入式系统开发中,...

“Rust真能防住C代码里的那些老问题吗?我们做了个实验验证”

C 和 C++ 是广泛用于系统开发的传统强者,但也因为内存不安全问题频频“背锅”。那么,使用 Rust,真的能让软件变得更安全吗?系统软件工程师 Marc 最近做了一项实验,亲自验证 Rust 在处理...

【c语言学习笔记】数据类型(c语言中数据类型有哪几大类?)

c语言学习笔记,欢迎大家能在评论区提出我学习错误的地方方便我进行改正~在计算机中,计算机用二进制来储存数据,在c语言中有许多的数据类型用来存储数据,当然不同的数据类型所用的内存占用也不一样,下面就来用...

C语言程序概念学习、了解自动化流程以及程序的执行特点

在编程的世界里,C 语言是一座坚实的基石,深入理解 C 语言程序的相关概念,掌握其自动化流程和执行特点,是开启高效编程之旅的关键。下面,我们将一起深入探讨 C 语言程序的概念、自动化流程以及执行特点,...