C语言学习第二节----C语言数据类型和变量(1)

本文介绍了C语言中的数据类型,包括内置类型如整型、字符型、浮点型、布尔类型以及它们的取值范围。还详细讲解了signed和unsigned的区别,以及变量的创建、分类和初始化规则,特别提到了sizeof操作符的作用。
摘要由CSDN通过智能技术生成

前言

整理总结自己所学知识,如有错误,欢迎指正。

一、数据类型的介绍

C语言提供了丰富的数据类型来描述生活中的各种数据。

使用整型类型来描述整数,使用字符型来描述字符,使用浮点型来描述小数。

C语言提供的数据类型如下

内置类型:C语言自带

自定义类型:自己设计的

(1)字符型

char

[signed] char

unsigned char

[]表示里面的内容在写代码时可以省略不写,下面出现的[]同理。

(2) 整型

短整型

short [int]

[signed] short [int]

unsigned short [int]

整型

int

[signed] int

unsigned int

长整型

long [int]

[signed] long [int]

unsigned long [int]

更长的整型

long long [int]

[signed] long long [int]

unsigned long long [int]

(3)浮点型

float----单精度浮点数

double----双精度浮点数

long double

(4)布尔类型

_Bool

C语言原来并没有为布尔专门设置一个类型,而是使用整数0表示假,非零表示真。

后来引入布尔类型,是专门表示真假的。

使用布尔类型包含的头文件:<stdbool.h>

布尔类型变量的取值范围:true或者false

(5)各种数据类型的长度

不同的数据类型就能够创建出不同长度的变量,变量长度不同,存储的数据范围就有所差异。

sizeof操作符

sizeof是一个关键字,也是操作符,专门是来计算sizeof的操作符数的类型长度的,单位是字节。

sizeof操作符的操作数可以是类型,也可以是变量或者表达式。

sizeof(类型)

sizeof 表达式

sizeof的操作数如果不是类型,是表达式的时候,可以省略后面的括号。

sizeof后面的表达式是不真实参与运算的,根据表达式的类型来得出大小。

sizeof的计算结果是size_t类型的。

a是int类型,占2个字节

5是int类型,占2个字节

2个字节+2个字节=4个字节

s是short类型,占2个字节,存储不了4个字节,所以发生截断。

根据这个例子,我们就能更好的理解,sizeof是根据表达式类型来得出大小。

计算机单位

从上往下,单位逐渐变大。

bit----比特位

Byte----字节

KB

MB

GB

TB

PB

换算关系如下:
1Byte=8bit

1KB=1024Byte

1MB=1024KB

1GB=1024MB

1TB=1024GB

1PB=1024TB

二、signed和unsigned

C语言使用signed和unsigned关键字修饰字符型整型类型。

signed关键字,表示一个类型带有正负号,包含负值

unsigned关键字,表示该类型不带有正负号,只能表示零和正整数

对于int类型,默认带有正负号,也就是说int等同于signed int。 

int类型也可以不带正负号,只表示非负整数,这时就必须使用关键字unsigned声明变量。

整数变量声明为unsigned的好处是,同样的长度内存能够表示的最大值,增大了一倍。

字符类型char也可以设置signed和unsigned。

C语言规定,char类型默认是否带正负号,由当前系统决定。

char并不等同于signed char,有可能是signed char,也有可能是unsigned char。

三、数据类型的取值范围

四、变量 

(1)变量的创建

类型是用来创建变量的

变量:经常变化的值

常量: 不变的值

初始化:变量创建的时候给一个初始值

(2)变量的分类

全局变量:在大括号外部定义的变量,使用范围更广,不初始化的话,默认是0。

局部变量:在大括号内部定义的变量,使用范围局限,不初始化的话。默认是随机值。

正常情况下,变量创建的时候要初始化。

当全局变量和局部变量同名时,局部变量优先使用。

 

                                                                                        

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值