【2月更文挑战第3天】C数据类型

简介: 在 C 语言中,数据类型指的是用于声明不同类型的变量或函数的一个广泛的系统。变量的类型决定了变量存储占用的空间,以及如何解释存储的位模式。

C 数据类型
在 C 语言中,数据类型指的是用于声明不同类型的变量或函数的一个广泛的系统。变量的类型决定了变量存储占用的空间,以及如何解释存储的位模式。

C 中的类型可分为以下几种:
image.png
数组类型和结构类型统称为聚合类型。函数的类型指的是函数返回值的类型。在本章节接下来的部分我们将介绍基本类型,其他几种类型会在后边几个章节中进行讲解。

整数类型
下表列出了关于标准整数类型的存储大小和值范围的细节:
image.png
注意,各种类型的存储大小与系统位数有关,但目前通用的以64位系统为主。

以下列出了32位系统与64位系统的存储大小的差别(windows 相同):
image.png
为了得到某个类型或某个变量在特定平台上的准确大小,您可以使用 sizeof 运算符。表达式 sizeof(type) 得到对象或类型的存储字节大小。下面的实例演示了获取 int 类型的大小:

实例:

#include <stdio.h>
#include <limits.h>

int main()
{
   
   
   printf("int 存储大小 : %lu \n", sizeof(int));

   return 0;
}

%lu 为 32 位无符号整数,详细说明查看 C 库函数 - printf()。

当您在 Linux 上编译并执行上面的程序时,它会产生下列结果:

int 存储大小 : 4

浮点类型
下表列出了关于标准浮点类型的存储大小、值范围和精度的细节:
image.png
头文件 float.h 定义了宏,在程序中可以使用这些值和其他有关实数二进制表示的细节。下面的实例将输出浮点类型占用的存储空间以及它的范围值:

实例:

#include <stdio.h>
#include <float.h>

int main()
{
   
   
   printf("float 存储最大字节数 : %lu \n", sizeof(float));
   printf("float 最小值: %E\n", FLT_MIN );
   printf("float 最大值: %E\n", FLT_MAX );
   printf("精度值: %d\n", FLT_DIG );

   return 0;
}

%E 为以指数形式输出单、双精度实数,详细说明查看 C 库函数 - printf()。

当您在 Linux 上编译并执行上面的程序时,它会产生下列结果:

float 存储最大字节数 : 4 
float 最小值: 1.175494E-38
float 最大值: 3.402823E+38
精度值: 6

void 类型
void 类型指定没有可用的值。它通常用于以下三种情况下:
image.png

目录
相关文章
|
1月前
|
机器学习/深度学习 消息中间件 人工智能
结构化思维助力Prompt创作:专业化技术讲解和实践案例
结构化思维助力Prompt创作:专业化技术讲解和实践案例
结构化思维助力Prompt创作:专业化技术讲解和实践案例
|
2月前
|
编译器 C语言
【2月更文挑战第2天】C基本语法
C 中的空格 只包含空格的行,被称为空白行,可能带有注释,C 编译器会完全忽略它。 在 C 中,空格用于描述空白符、制表符、换行符和注释。空格分隔语句的各个部分,让编译器能识别语句中的某个元素(比如 int)在哪里结束,下一个元素在哪里开始。因此,在下面的语句中: int age; 在这里,int 和 age 之间必须至少有一个空格字符(通常是一个空白符),这样编译器才能够区分它们。另一方面,在下面的语句中: fruit = apples + oranges; // 获取水果的总数 fruit 和 =,或者 = 和 apples 之间的空格字符不是必需的,但是为了增强可读性,您可以根
14 4
|
机器学习/深度学习 存储 分布式计算
大数据比赛注意事项:
一:本地源YUM 1.Centos自带的YUM源更新太慢,可以使用更改本地源的方法来安装软件。 2.我们通常使用 yum install 命令来在线安装 linux系统的软件, 这种方式可以自动处理依赖性关系,并且一次安装所有依赖的软体包。
138 0
|
机器学习/深度学习 监控 算法
Algorithm:数学建模大赛(CUMCM/NPMCM)之建模历年题目类型、数据分析及官方评阅要点之详细攻略
Algorithm:数学建模大赛(CUMCM/NPMCM)之建模历年题目类型、数据分析及官方评阅要点之详细攻略
|
存储 Java
从字节码讲解i++和++i的区别|8月更文挑战
从字节码讲解i++和++i的区别,i++真的是先赋值再运算吗?让我们从底层一探究竟,彻底弄明白i++和++i的运算过程。
136 0
从字节码讲解i++和++i的区别|8月更文挑战
|
双11 数据库 安全
深度回顾!30篇好文,解析历年双十一背后的阿里技术秘籍 | 双11特别策划之一
一年一度的双十一进入倒计时!自2009年起,天猫双十一当天的交易额逐年增长,在庞大的数据处理量面前,用户在使用感上却丝毫不受影响。今天我们就为大家挑选了,历届双十一中阿里技术团队在面对流量洪峰时所运用的技术,来看看是哪些黑科技在保证你能顺畅地“剁手”?
14343 0
《面向数据科学的概率论》翻译活动期待大家的参与 | ApacheCN
Github 仓库:https://github.com/apachecn/prob140-textbook-zh 整体进度:https://github.
761 0

热门文章

最新文章