当前位置:首页 > 教育培训 >

c语言int是什么(c语言怎么理解int)

来源:原点资讯(www.yd166.com)时间:2023-06-18 16:15:45作者:YD166手机阅读>>

C语言基本数据类型简介

1.概述

 C 语言包含的数据类型如下图所示:

c语言int是什么,c语言怎么理解int(1)

C语言中的基本数据类型有整型、字符型、浮点型:单精度型、双精度型;枚举类型、数组等。

1、整型

整型分为整型常量和整形变量,常量就是我们平时所看到的准确的数字,例如:1、20、333、、、等等,变量则按我的理解是我像内存去申请一个存储空间,告诉内存空间我申请了这个地方用来存放一个整型的数据,但是什么时候放并没有直接确定。一般占4个字节(32位),最高位代表符号,0表示正数,1表示负数,取值范围是-2147483648~2147483647,在内存中的存储顺序是地位在前、高位在后,例如0x12345678在内存中的存储如下。

定义:用int关键字,举例如下: 

c语言int是什么,c语言怎么理解int(2)

在C语言中基本的整型变量标识符是int,在32位机器中一个int型数据使用32位也就是4个字节进行存储。

c语言int是什么,c语言怎么理解int(3)

2、字符型

字符型在其本质上就是整形,我们在C语言中使用char表示一个字符型,他占用一个字符的存储空间,字符型在存储时其内部存储的依旧是二进制数据,当我们读出时将会得到一个整形数据,而我们输出时会得到一个字符是因为我们人为的定义了一个对照表,这个表规定字符a的数值就是97,所以当我们遇到97时我们有两种读出方式,第一种以整数形式读出就是97,另一种就是以字符型读出,使用%c指定读出形式,则对照表则为a。

c语言int是什么,c语言怎么理解int(4)

3、浮点型

除了整形还有另一类很重要的基本数据类型,那就是实型。我们在学习数学时不仅使用整数,更多的时候则是使用小数,那么浮点数在内存中饭的存储与整数在内存中的存储有什么不一样的地方吗?其实,单从数据存储上看,都是2进制并没有任何不同,但不同的是我们加在其上的表示规则与读取规则。无论单精度还是双精度的浮点数在内存中我们对于一个浮点数都分为三个部分:

1、符号位:0代表正 1代表负;

2、指数位:用于存储科学技术法中的指数;

3、尾数位:存储尾数部分

3.1 单精度

float:系统的基本浮点类型。至少能精确表示6位有效数字。

我们在C语言中使用一个float类型表示一个单精度的浮点类型,一个float类型占用4个字节的存储位,其中最高位为符号位,紧接着8位为指数位,剩下的23位为尾数位,我们使用%f作为其格式说明符,而且float一般精确到小数位后6位,即保证6位有效。

3.2 双精度

double:范围(可能)更大的浮点类型。能表示比float类型更多的有效数字以及更大的指数。

long double:范围(可能)更大的浮点类型。能表示比double类型更多的有效数字以及更大的指数。

我们在C语言中使用一个double类型表示一个双精度的浮点类型,一个double类型占用8个字节的存储位, 最高位为符号位,紧接着8位为指数位,剩下的52位为尾数位,我们使用%lf作为其格式说明符,而且double类型一般精确到小数位后12位,即保证12位有效。

4 指针

指针?什么是指针?从根本上看,指针是一个值为内存地址的变量(或数据对象)。正如char类型变量的值是字符,int类型的变量的值是整数,指针变量的值地址。在C语言中,指针有许多用法。

假设一个指针变量名是ptr,可以编写如下语句:

c语言int是什么,c语言怎么理解int(5)

对于这条语句,我们就可以说ptr“指向”pooh。ptr和&pooh的区别是ptr是变量,而&pooh是常量。或者,ptr是可修改的左值,而&pooh是右值。还可以把ptr指向别处:

ptr = &bah; //把ptr指向bah,而不是pooh

现在ptr的值是bah的地址。

要创建指针变量,先要声明指针变量的类型。

5 数组

数组是按照顺序存储的一系列类型相同的值,如10个char类型的字符或15个int类型的值。整个数组有一个数组名,通过整数下标访问数组中单独的项或元素。例如:以下声明:

float debts[20];

声明debts是一个内容20个元素的数组,每个元素都可以存储float类型的值。数组的第一个元素是debts[0],第2个元素是debts[1],以此类推,直到debts[19]。注意,数组元素的编号从0开始,不是从1开始。可以给每个元素赋float类型的值。例如,可以这样写:

debts[5] = 32.54;

debts[6] = 1.2e 21;

实际上,使用数组元素和使用同类型的变量一样。例如,可以这样把值读入指定的元素中:

scanf("%f",&debts[4]);//把一个值读入数组的第5个元素

这里要注意一个潜在的陷阱:考虑到影响执行的速度,C编译器不会检查数组的下标是否正确。下面的代码,其实都不正确:

debts[20] = 88.32;//该数组元素不存在!

debts[33] = 828.12;//该数组元素不存在!

编译器不会查找这样的错误。当运行程序时,这会导致数据被放置在已被其他数据占用的地方,可能会破坏程序的结果甚至导致程序异常中断。

6 复数和虚数类型(因为用的不多,所以这里几乎省略)

注意:

char类型肯定是1字节,因为C把char类型的长度定义为1个字节。所以在char类型长为16位,double类型长为64位的系统中,sizeof将报告double类型有4字节长。

好了,简单的数据类型介绍我们就到这里了,希望能帮助大家理解、入门。笔记只是辅助,更多的还是需要大家跟着徐老湿一起学习,互动交流。最后预祝小伙伴们学业有成!

需要更多学习笔记干货的小伙伴、欢迎关注公众号【老九学堂】(づ ̄3 ̄)づ╭❤~

栏目热文

c语言中int占四个字节对吗(c语言中int都是4个字节吗)

c语言中int占四个字节对吗(c语言中int都是4个字节吗)

作者 | 豌豆花下猫来源 | Python猫(ID:python_cat)我之前的一篇文章,带大家揭晓了 Python ...

2023-06-18 16:41:15查看全文 >>

c语言int类型占几位(c语言int最大范围是多少)

c语言int类型占几位(c语言int最大范围是多少)

在Java中,不同的数据类型占用不同的字节数。int类型占用4个字节(32位),表示整数类型。char类型占用2个字节(...

2023-06-18 16:24:56查看全文 >>

c语言int占多少字节(c语言中int都是4个字节吗)

c语言int占多少字节(c语言中int都是4个字节吗)

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

2023-06-18 16:51:51查看全文 >>

c语言void和int通用吗(c语言中void和int自定义函数的区别)

c语言void和int通用吗(c语言中void和int自定义函数的区别)

在计算机系统中,数据是放在内存中的,数字、文字、符号、图形、音频、视频等数据都是以二进制形式存储在内存中的,它们并没有本...

2023-06-18 16:55:43查看全文 >>

在c语言中int有几个字节(int在c语言中占几个字符)

在c语言中int有几个字节(int在c语言中占几个字符)

c语言的数据不同类型不同类型的数据在内存中占用的存储单元长度是不同的,例如, Visual C +为 char (字符...

2023-06-18 16:51:29查看全文 >>

c语言中int a的用法(c语言中int用法)

c语言中int a的用法(c语言中int用法)

计算机要处理的数据(诸如数字、文字、符号、图形、音频、视频等)是以二进制的形式存放在内存中的;我们将8个比特(Bit)称...

2023-06-18 16:29:22查看全文 >>

c语言int所占字节数(c语言int为什么占4个字节)

c语言int所占字节数(c语言int为什么占4个字节)

在C语言中,数据类型分为:基本数据类型,和复杂数据类型。基本数据类型包括:int、long、short、char、fol...

2023-06-18 16:21:49查看全文 >>

c语言int型字节大小(c语言int字节长度)

c语言int型字节大小(c语言int字节长度)

使用 sizeof 操作符计算int, float, double 和 char四种变量字节大小。sizeof 是 C ...

2023-06-18 16:26:53查看全文 >>

c语言int类型占几个字节(c语言long int类型怎么输入)

c语言int类型占几个字节(c语言long int类型怎么输入)

1. 指针操作指针是C语言中非常重要的概念,它可以让我们直接访问内存中的数据。在嵌入式系统中,指针操作通常用于动态分配内...

2023-06-18 16:26:28查看全文 >>

c语言中int型变量占几个字节

c语言中int型变量占几个字节

如果要选出C语言中最重要、难度大的概念是什么,那就是指针!难度大,意味着使用方便、实用高效,同时也意味这个知识点复杂、实...

2023-06-18 16:40:43查看全文 >>

文档排行