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

yumo6665个月前 (05-08)技术文章28

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 语言的关键字(C语言的关键字)

C 语言中的关键字又称保留字,它们只能用于预定义的目的,而不能用于任何其它目的。C89C89 中包含 32 个关键字:C99C99 中包含 37 个关键字(粗体蓝色部分是新增关键字(+5)):C11/...

C语言简介(介绍一下c语言)

C语言是一种通用、高效的结构化编程语言,由**丹尼斯·里奇(Dennis Ritchie)**于1972年在贝尔实验室开发。它最初用于重写Unix操作系统,后因其简洁性、灵活性和对硬件的直接控制能力,...

从零基础入门C语言教程(零基础c语言入门书籍)

一、下载和安装Visual Studio1.1 下载Visual Studio打开您的浏览器,访问Visual Studio官方网站。在首页选择“下载Visual Studio”按钮,选择“Commu...

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

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

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

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