C语言的数据类型--整型数据
知识点一:整型数据类型
整型数据类型 | 缺省型 | 名称 |
[signed]int | int | 整型 |
unsigned int | unsigned int | 无符号整型 |
[signed]short[int] | short | 短整型 |
unsigned short[int] | unsigned short | 无符号短整型 |
[signed]long[int] | long | 长整型 |
unsigned long[int] | unsigned long | 无符号长整型 |
以上分类中的表现形式带符号整型可表示正、负整数,无符号的整型只能表示正整数,如unsigned int的取值范围位0~2*32-1。
知识点二:整型常量
在c语言中,整型常量采用3种形式进行表示:
1)十进制整数,如1024,由0~9构成;
2)以0开头的八进制整数,如0123,由0~7构成,它等于十进制数83;
3)以0x开头的十六进制整数,如0x12E2,由0~9,A~F构成;
知识点三:整型变量
由于在C语言中会为一个整型变量在内存中分配一定长度的储存单元,而储存单元中的位只接受0或1,因此,这个整型变量的数据便以二进制形式进行存放。
这里一个存储单元等于一个字节,一个字节等于8位。
00000000=0,00000001=1,00000010=2......11111111=255
知识点四:整型数据的存放
在C语言中,数值是以补码的形式表示的,那么,这里又涉及到正整数的补码和负整数的补码,无符号短整型不能表示负数,并且在C语言中以原码的形式进行表示的。
原码; 000000000000000=0 111111111111111=2*16-1,即0~65535。
补码:0 =+0~+32767(2*15-1)正数32768个。
1 =-1~-32768(-2*15)负数32768个。
a:正整数的补码就是该数的二进制形式,即补码=原码;
如征信数占2个存储单元,求10的补码:
1)10的二进制形式位1010;
2)10的补码=1010(前面12个0通常省略不写);
b:负整数的补码;
1)数据的绝对值表示为二进制形式;
2)最高位符号位为1,表示负数(0表示整数);
3)除符号位外的数值取反加1;
例:求-5的补码;
1)5的二进制=101,5的原码0000000000000101;
2)因为是负数,所以最高位符号为1,所以为1000000000000101;
3)按位取反得111111111111010;
4)加1得1111111111111011;
知识点五:整型数据占内存的大小
C标准没有具体规定各种类型数据所占用存储单元的长度,只要求sizeof(short)<=sizeof(int)<=sizeof(long),具体由各编译系统自行决定。
sizeof是测量类型或变量长度的运算符,可以采用sizeof()函数赖确定自己使用的计算计为数据分配多少字节数,例如下列代码:
#include<stdio.h>
int main()
{
printf("%d,sizeof(int));
printf("%d,sizeof(short));
printf("%d,sizeof(long));
return 0;
}
知识点六:整型变量的定义
C语言严格遵循强制类型先定义后使用。通过类型定义符,可以定义一个整数类型的变量,定义方法如下:
【类型定义符】标识符; 如int num;
在内存中使用4个字节的空间来保存整数数据,这个空间使用名称num来标识。
知识点点七:整型数据的溢出
1) 只有整型(包括字符型)数据可以加signed或unsigned修饰符,实型数据不能加;
2)对无符号整型数据用”%u”格式输出。%u表示用无符号十进制数的格式输出。如:
unsigned short price=50; //定义price为无符号短整型变量
printf("%u\n",price); //指定用无符号十进制数的格式输出
3)对于一个有符号类型的数据,由于其所能表示的数据范围已经界定,如果继续对其进行如“加”的操作便超出了界线,C语言称之为数据溢出,虽然数据溢出不会报错,但不会得到预期结果,例:
#include<stdio.h>
int main()
{
int i=32767;
printf("%d",i+1);
return 0;
}
结果:-32768,而不是32767
4)在指定一个变量定义为无符号整型后,不应向它赋予一个负值,否则会得到错误的结果;如:
unsigned short price=-1; \\不能吧一个负整数存储在无符号变量中
printf("%d\n",price);
结果:65535,而不是-1
C语言的数据类型--整型数据相关推荐
- c语言整型变量程序基本,C语言的数据类型→整型数据
整型数据 一.整型常量的表示方法: "整型常量"即"整常数". 在C语言中,整常数有三种形式表示: 十进制整数: 如:123.-456.4. 八进制整数,以0开 ...
- 二、C语言的数据类型—整型数据
整型数据分为整型常量和整型变量. 知识点一:整型常量 在C语言中,整型常量采用3种形式来进行表示: 1)十进制整数: 2)以0开头的八进制整数,如0123就是一个八进制数,它等于十进制数83: 3)以 ...
- c语言整型如何存放,C语言的数据类型→整型数据
整型数据 一.整型常量的表示方法:"整型常量"即"整常数". 在C语言中,整常数有三种形式表示: 十进制整数: 如:123.-456.4. 八进制整数,以0开头 ...
- c语言数据类型int的用法,C语言基本数据类型:整型(int)用法详解|C语言学习
C语言基本数据类型:整型(int)用法详解 1. 整型 int C 语言提供了很多整数类型(整型),这些整型的区别在于它们的取值范围的大小,以及是否可以为负.int 是整型之一,一般被称为整型.以后, ...
- Go语言基础-数据类型-整型
文章目录 前言 整型类型 1. 整数类型的分类 2. 整数类型的取值范围及内存占用 3.整数类型的案例 案例一 int类型 案例二 int8的取值范围测试 4. 整形的注意事项 5. 查看某个变量的数 ...
- c语言中整形变量,C语言基本数据类型:整型(int)用法详解
1.整型int C语言提供了很多整数类型(整型),这些整型的区别在于它们的取值范围的大小,以及是否可以为负.int是整型之一,一般被称为整型.以后,在不产生歧义的情况下,我们把整数类型和int都称为整 ...
- go语言基础-数据类型- 整型,浮点型,布尔型
基本数据类型 整型和浮点型 字符串 布尔类型 所有的语言都包含这三部分,我们之前学过的shell脚本也一样: 1. 整型和浮点型 package mainimport ("fmt" ...
- C语言基本数据类型:整型(int)用法详解
1. 整型int C 语言提供了很多整数类型(整型),这些整型的区别在于它们的取值范围的大小,以及是否可以为负.int是整型之一,一般被称为整型.以后,在不产生歧义的情况下,我们把整数类型和i ...
- 数据之基本数据类型——整型
在c语言中,仅有四种基本数据类型--整型.浮点型.指针和聚合类型(如数组和结构等). 所有其他类型都是从这四种基本类型的某种组合派生而来的. 此篇博客仅涉及到整型 1. 整型家族 整型家族包括字符.短 ...
最新文章
- 2018.2.11-12 写作业
- Android实战】DroidPlugin插件化应用分析
- ElasticSearch可视化工具Dejavu安装使用
- maven 学习---Maven本地资源库
- 中秋快乐:数据库的全家福指尖细数识几何?
- c mysql 返回自增id_mysql返回自增id
- uni.startPullDownRefresh 只能执行一次的解决方案
- eclipse下properties配置文件中文乱码解决
- 实战NSURLProtocol 拦截 APP网络请求NSURLConnection, NSURLSession, Alamofire
- vasp和ms_武汉理工大学赵焱课题组开发脚本 MS建模一键获取VASP输入文件POSCAR
- 刷淘宝流量软件推荐 免费刷淘宝流量软件优缺点
- VScode 下载、安装和设置中文界面
- 软件 -- 如何解除 tv15商业版的限制
- Acme CAD Converter 命令行模式
- 20多岁的年纪,做什么将来才不后悔?
- 仿今日头条后台管理系统(二)
- 测坐标天幕靶软件设计_测速天幕靶检定装置与检定方法
- 在linux下 用户的密码错误,linux中root用户密码错误如何解决
- flask搜索引擎whoosh的配置
- SparkMLib决策树和逻辑斯蒂回归的示例