二 C语言数据类型和变量

本文详细介绍了C语言中的数据类型(包括内置如char,int,float,double,bool等,以及自定义如数组),字符型、整型的细分,浮点数的定义和精度,Signed和Unsigned的区别,变量的定义、初始化和分类,以及基本运算符和强制转型的概念。
摘要由CSDN通过智能技术生成

1 数据类型

1.1 前言

		定义:用程序去解决生活中的问题,需要通过各种的不同数据来进行计算,那么首先就需要去定义不同的数据类型。
			在C语言中包含两大类:
			一 内置数据类型   // C语言中已经设定的数据类型
				① 字符 char
				② 整型 int
				③ 浮点数 float/double
				④ 布尔类型 _BOOL
			二 外置数据类型:自定义去设定
				如 数组,

1.2 字符型

			1 上一节我们知道,"  "里面代表的是字符串   ' '代表的是一个字符,比如一个字母,一个和汉字,一句英文
			2 可以通过strlen函数计算出一串字符的大小 如

在这里插入图片描述

	  3 换算单位:
				0或者1为 1bits
				1字节=8比特      //一个汉字为两个字节
				1kb=1024字节
				1mb=1024Kb
				1G=1024mb
				1T=1024G

1.3 整型

			1 就是为整数类的数据

在这里插入图片描述

		   2 我们需要根据实际整数的大小来决定用哪一段数据内存。 
					比如人年龄的范围大概是0-100,而用int类型的话,int的数据量的内存太大。后续不能利用上,造成资源的浪费
					所以在整型类给做了以下区分
			3 short (短整型) long(长整型) long long (长长整型)

1.4 浮点数

定义:非整数类,带有小数点,同时也可以通过小数点不同的位置来表示同一个数

例如:   10和10.0和   1.0*10^1
       	98.316与9831.6*10^-1 
    他们之间的区别 第一组中 10 和其他的数不是同一类型
    第二组中都为浮点数,并且都为同一个数

两种标识方法

单精度: float 后续小数的精确度较低 		

双精度:double 小数部分精确度高

在这里插入图片描述

1.5 布尔类型

定义:用于去特定表示真假条件
用法:

#include<stdio.h>
#include<stdbool.h> // 设定布尔类型需要加入头文件
int main()
{
_Bool flag (true)
if(flag)
{
printf("Hello wolrd!\n");
}
return 0;
}

2 Signed和Unsigned

定义:signed为有符号限制,unsigned为无符号限制,只能表示为正数或者0

1 如果是signed int a 就表示为int a ,而字符类char的正负符号需要根据系统的默认设置来决定。

2 在unsigned中,取值范围增大了,0-65537
	signed中,为 -32768-32767

3 各种类型的取值范围

在limits_h文件中可查看

4 变量

4.1定义:变化的数据为变量,不变的量为常量

#include<stdio.h>
int main()
{
short int /*定义数据类型*/  a /*设定名字*/ 
return 0;
}

4.2 初始化:对于刚开始设定好的变量赋予数值

int b;
printf("%d",b=100);
int a =100;
printf("%d",a);

4.3 局部变量和全局变量

在C语言中需要搞清楚这两种变量存放的位置,局部变量的值存放在栈区域,堆区域,  静态区

在这里插入图片描述

5 运算符

5.1 有=,+,-,*,/,%为双目运算符,需要两个操作数参与。

5.2 + 中 有 前置++,和后置++

在这里插入图片描述

 前置++的含义是 先+1 再使用
后置++的含义是 先使用 再+1
并且 b=b+1 可以表示为 b+=1

5.3 / %

 / 号中 整数除以整数时,得到的值还是为整数,取模运算中需要双方有一方为整数

6 单目运算符

7 强制转型符

7.1 将浮点数类型强制的转化为整数,但这样操作只会取得整数部分
在这里插入图片描述

8 Scanf和Printf

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值