数据类型及运算符[补档]
文章目录:
第一章:数据类型
1:什么是数据类型
数据类型其实就是将大家生活中的信息进行数据化从而表达。
2:数据类型有哪些
2.1内置类型
2.1.1:字符型
1 char //character
2[signed] char //有符号的
3unsigned char //⽆符号的
2.1.2:整型
1.短整型
short [int]
[signed] short [int]
unsigned short [int]
2.整型
int
[signed] int
unsigned int
3.⻓整型
long [int]
[signed] long [int]
unsigned long [int]
4.更⻓的整型
long long [int]
[signed] long long [int]
unsigned long long [int]
//C99中引⼊
2.1.3:浮点型
float
double
long double
2.1.4:布尔类型
在c语言中一般用" 0 “代替为假,非” 0 “代替为真,而布尔类型并没有单独设立数据类型,但在” c99 "中专门来表示真假.
布尔类型的使⽤得包含头⽂件 <stdbool.h>
布尔类型变量的取值是: true 或者 false
#define false 0
#define true 1
#include <stdbool.h>
int main() {
bool isTrue = true;
if (isTrue) {
// 代码
}
return 0;
}
3:数据类型的长度及范围
3.1数据类型的长度
每一种数据类型都代表着所对应长度,但也会根据数据类型所创建变量的不同,存储也稍有差异。
下述就是代表各数据类型存储的表述(sizeof操作符)
3.1.1 sizeof操作符
sizeof操作符就是用来计算个类型的长度,单位为:“字节”。
sizeof 操作符的操作数可以是类型,也可是变量或者表达式
其中只计算类型不计算表达式
类型计算:
#include <stdio.h>
int main()
{
printf("%zd\n", sizeof(char));
printf("%zd\n", sizeof(_Bool));
printf("%zd\n", sizeof(short));
printf("%zd\n", sizeof(int));
printf("%zd\n", sizeof(long));
printf("%zd\n", sizeof(long long));
printf("%zd\n", sizeof(float));
printf("%zd\n", sizeof(double));
printf("%zd\n", sizeof(long double));
return 0;
}
输出结果为:
1
1
2
4
4
8
4
8
8
表达式不计算:
#include <stdio.h>
int main()
{
int a=3;
int b=15;
printf("%zd\n",sizeof(a=b+10));
printf("%d\n",a);
return 0;
}
sizeof 在代码进⾏编译的时候,就根据表达式的类型确定了,⽽表达式的执⾏却要在
程序运⾏期间才能执⾏,在编译期间已经将sizeof处理掉了,所以在运⾏期间就不会执⾏表达式了。
3.2数据类型的取值范围
<limits.h> 整型类型的取值范围。
<float.h> 浮点型类型的取值范围。
• SCHAR_MIN , SCHAR_MAX :signedchar 的最⼩值和最⼤值。
• SHRT_MIN , SHRT_MAX :short 的最⼩值和最⼤值。
• INT_MIN , INT_MAX :int 的最⼩值和最⼤值。
• LONG_MIN , LONG_MAX :long 的最⼩值和最⼤值。
• LLONG_MIN , LLONG_MAX :longlong 的最⼩值和最⼤值。
• UCHAR_MAX :unsigned char 的最⼤值。
• USHRT_MAX :unsigned short 的最⼤值。
• UINT_MAX :unsigned int 的最⼤值。
• ULONG_MAX :unsigned long 的最⼤值。
• ULLONG_MAX :unsigned longlong 的最⼤值。
4.修饰整型及字符型的关键字
4.1signed
带有正负号,包含负值
4.2unsigned
不带有正负号,只能表⽰零和正整数
第二章:操作符
1: 什么是操作符
在C语言中,操作符是用来执行特定操作的符号或关键字。操作符可以用于处理变量、常量以及表达式。
2:操作符的类型有哪些
2.1:算术操作符
+、-、*、/、%
“+,-”:完成加法与减法
“*,/”:完成乘法与除法
“%”:完成求模(余)运算,即返回两个整数相除的余值。但这个运算符只能⽤于整数,不能⽤于浮点数。
2.2:赋值操作符
2.2.1:连续赋值
#include <stdio.h>
int main()
{
int x=10;
int y=20;
int z=30;
y=x+20;
printf("%d",y);
return 0;
}
给变量连续赋值(赋值是创建一个变量并给予一个值,这叫做赋值)
2.2.2:复合赋值
int a=5
a+=3
a+=3的意思为a等于a+3
所以a=5+3=8
3:单目操作符
++、–、+、-
举个例子:
++a与a++区分就在于"+"在变量的前为先"+“后使用,在变量后为先使用后"+”
#include <stdio.h>
int main()
{
int a=2;
int b=a++;
printf("%d %d",a,b);
return 0;
}
输出结果为b=2,a=3
4.强制类型转换操作符
#include <stdio.h>
int main()
{
int a=(int)8.88;
printf("%d",a);
return 0;
}
如上图所示
请各位大大动动发财的小手点个关注吧喵,感谢各位大大了。