C语言初阶1:基本数据类型

这篇博客详细介绍了C语言的基本数据类型,包括整型、浮点型、字符型和布尔类型。讨论了各类型的数据范围、表示精度、字节大小以及输入输出格式化。此外,还涉及到了数据转换、无符号整型、浮点数的精度问题和ASCII编码等内容,适合C语言初学者阅读。
摘要由CSDN通过智能技术生成

四个问题?

1、C语言有哪些数据类型?有哪些整数类型?有哪些浮点类型?
2、各种数据类型如何表示?输入输出格式化有哪些?
3、各种类型大小是多少?范围是多少?
4、如何选择整型类型和浮点类型?

1、数据类型

数值类型分为整型(整数)和浮点型(小数)。按照表示数字范围的从大到小

整数分为五类:字符型(char)、短整型(short)、整型(int)、长整型(long)和长长整型(long long)
浮点型分三类:单精度型(float)、双精度型(double)和长双精度型(long double)
在这里插入图片描述

1.1 获取类型大小

关键字sizeof:查看变量或者类型大小

int n;
printf("%d",sizeof(int));
printf("%d",sizeof(n));

上面的括号不是必须的,但是建议带上。所以也可以如下表示:

int n;
printf("%d",sizeof int);
printf("%d",sizeof n);

1.2 各种类型的大小

printf("sizeof(char)=%d\n",sizeof(char));
printf("sizeof(short)=%d\n",sizeof(short));
printf("sizeof(int)=%d\n",sizeof(int));
printf("sizeof(long)=%d\n",sizeof(long));
printf("sizeof(long long)=%d\n",sizeof(long long));
printf("sizeof(float)=%d\n",sizeof(float));
printf("sizeof(double)=%d\n",sizeof(double));
printf("sizeof(long double)=%d\n",sizeof(long double));

输出的结果为:
在这里插入图片描述
通常有些类型大小并不是固定的,计算机硬件、操作系统和编译器都会影响类型的大小。通常类型大小有如下规律:

char < short < int < float < double
int <= long <= long long

在常用的计算机硬件和操作系统中,各种类型的大小如下表所示:
在这里插入图片描述

1.3 字节

sizeof获得数据的单位是Byte(字节)。Byte(字节)是计量存储容量的一种计量单位,一个字节是8位二进制,可容纳256个数字。一个ASCII字符就是一个字节。
除了Byte(字节),还有其他常用存储容量单位
在这里插入图片描述
有时,我们用B表示Byte(字节),用b表示bit(比特/位),注意两者区别。

1.4 输入输出格式化

在这里插入图片描述
double的输入占位符必须是%lf,输出占位符可以是%f。

2、整数类型

2.1 表示范围

每种数据类型大小不同,各自表示数据范围也不同。下面的常用类型的范围。
在这里插入图片描述
上面的是通常范围(32位下),实际上有些情况略有出入。总之,类型的表示范围与类型大小存在如下关系:
在这里插入图片描述

2.2 无符号整型

在一些特殊情况下,数据只用0和整数,不存在负数,这时可以使用无符号整型unsigned。无符号整型只是在原来的整型前加上关键字unsigned。因为没有负数,所以数值的表示范围扩大了一倍。
在这里插入图片描述
类型的表示范围与类型大小存在如下关系:
在这里插入图片描述
其中,n是类型大小。
输入输出无符号整型格式:
在这里插入图片描述

2.3 整型类型选择

整型类型很多,通常遵循下面的使用规则:

1)大多数情况下使用int。
(2)如果int范围不够,使用long long。
(3)避免使用long。
(4)谨慎使用unsigned

3、浮点类型

3.1 浮点数的范围

(1)运行下面程序,分析执行结果
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值