C/C++中的基础数据类型

举报
小嗷犬 发表于 2022/11/08 11:49:35 2022/11/08
【摘要】 C/C++中的基础数据类型。整型、浮点型、字符型,存储大小、存储范围、精度与映射范围,ASCII表,代码实例。

✅作者简介:人工智能专业本科在读,喜欢计算机与编程,写博客记录自己的学习历程。
🍎个人主页:小嗷犬的博客
🍊个人信条:为天地立心,为生民立命,为往圣继绝学,为万世开太平。
🥭本文内容:C/C++中的基础数据类型
更多内容请见👇


@TOC


1.整型

1.1 什么是整型

整型,即整数类型,用于表示整数的数据类型,通常指int类型,广义上包括长整型long long、无符号整型unsigned int等整数类型。


1.2 整型的存储大小与存储范围

以64位计算机为例

类型 存储大小 存储范围
int 4字节 -2^31^ 到 2^31^-1
unsigned int 4字节 0 到 2^32^-1
long 4字节 -2^31^ 到 2^31^-1
unsigned long 4字节 0 到 2^32^-1
long long 8字节 -2^63^ 到 2^63^-1
unsigned long long 8字节 0 到 2^64^-1

1.3 代码实例

#include <stdio.h>

int main()
{
	int a = -2147483647 - 1;
	int b = 2147483647;
	printf("int可表示的范围:%d ~ %d\n", a, b);

	unsigned int c = 4294967295;
	printf("unsigned int可表示的范围:0 ~ %u\n", c);

	long d = -2147483647 - 1;
	long e = 2147483647;
	printf("long可表示的范围:%ld ~ %ld\n", d, e);

	unsigned long f = 4294967295;
	printf("unsigned long可表示的范围:0 ~ %lu\n", f);

	long long g = -9223372036854775807 - 1;
	long long h = 9223372036854775807;
	printf("long long可表示的范围:%lld ~ %lld\n", g, h);

	unsigned long long i = 18446744073709551615;
	printf("unsigned long long可表示的范围:0 ~ %llu\n", i);
	
	return 0;
}


2.浮点型

2.1 什么是浮点型

浮点型,即浮点数类型,利用科学计数法来表示实数,常用于表示小数或是量级比较大的大数,包括单精度浮点型float、双精度浮点型double、长双精度浮点型long double。


2.2 浮点型的存储大小、存储范围与精度

以64位计算机为例

类型 存储大小 存储范围 精度
float 4字节 1.175494E-38 到 3.402823E+38 6位
double 8字节 2.225074E-308 到 1.797693E+308 15位
long double 8字节 2.225074E-308 到 1.797693E+308 15位

2.3 代码实例

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

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

	printf("double 存储最大字节数 : %llu\n", sizeof(double));
	printf("double 最小值: %E\n", DBL_MIN);
	printf("double 最大值: %E\n", DBL_MAX);
	printf("double 精度值: %d\n\n", DBL_DIG);

	printf("long double 存储最大字节数 : %llu\n", sizeof(long double));
	printf("long double 最小值: %E\n", LDBL_MIN);
	printf("long double 最大值: %E\n", LDBL_MAX);
	printf("long double 精度值: %d\n", LDBL_DIG);

	return 0;
}

3.字符型

3.1 什么是字符型

字符型,是用于表示字符的数据类型,在C语言中,具有与整型相同的运算逻辑,本质上是整型空间到ASCII表上的一组映射,通常指char类型,除此之外还有无符号字符型unsigned char。


3.2 字符型的存储大小、存储范围与映射范围

以64位计算机为例

类型 存储大小 存储范围
char 1字节 -128 到 127 或 0 到 255
unsigned char 1字节 0 到 255

ASCII完整表可见:https://blog.csdn.net/ttmice/article/details/50978054


3.3 代码实例

#include <stdio.h>

int main()
{
	char H = 72;
	char e = 101;
	char l = 108;
	char o = 111;
	char space = 32;
	char W = 87;
	char r = 114;
	char d = 100;
	char exclamatoryMark = 33;
	printf("%c%c%c%c%c%c%c%c%c%c%c%c\n", H, e, l, l, o, space, W, o, r, l, d, exclamatoryMark);

	return 0;
}

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。