比特鹏哥2-数据类型和变量【自用笔记】

比特鹏哥2-数据类型和变量【自用笔记】

      • 1.数据类型介绍
        • 字符,整型,浮点型,布尔类型
      • 2.signed 和unsigned
      • 3.数据类型的取值范围
        • sizeof 展示字节大小--- 计算机中单位:字节
      • 4.变量 常量
        • 4.1 变量
            • 创建变量(数据类型 变量名)
            • 创建变量的时候可以进行初始化
          • 变量:全局变量 /局部变量
          • 变量的使用
          • 变量的作用域和生命周期
        • 4.2 常量
          • const修饰的常变量
          • define定义的标识符常量
          • 枚举常量:可以一一列举
      • 5.算术操作符:+、-、*、/(除法)、%(取模)---【双目操作符】
        • 5.1 /(除法)
        • 5.2 % (取模)
      • 6.赋值操作符:=和复合赋值
      • 7.单目操作符:++、--
        • 7.1 ++:前置++,后置++
        • 7.2 --:前置--,后置--
          • 单目操作符的sizeof
          • 单目操作符:~(按二进制位取反)
      • 8.强制类型转换
      • 9.scanf和printf介绍

1.数据类型介绍

比特鹏哥2-数据类型和变量【自用笔记】_第1张图片

%d  -打印整型
%c  -打印字符
%f  -打印浮点数字 -小数
%s  -打印字符串
%p  -打印地址

字符,整型,浮点型,布尔类型

//字符:char

char ch='A'printf ("%c\n",ch)
//整型 :短整型  整型  长整型  

///短整型 short [int], [signed] short [int], unsigned short [int] 
///整型 int ,  [signed] int, unsigned int
///长整型 long [int],  [signed] long [int], unsigned long [int]

short int  q = 5printf ("%d/n",q)int  w = 5printf ("%d/n",w)long  e= 5printf ("%d/n",e)
//浮点型 float,double,long double
float f = 5.0printf ("%f/n",f)
//字符型 char, [signed] char ,  unsigned char
float f = 5.0printf ("%f/n",f)
//布尔类型:0表示假 非0表示真
_Bool
布尔类型需要使用头文件 <stdbool.h>
布尔类型变量的取值:true 或者  false

2.signed 和unsigned

C语言使用 signed 和 unsigned 关键字修饰字符型和整型类型的。
signed 关键字,表示一个类型带有正负号,包含负值;
unsigned 关键字,表示该类型不带有正负号,只能表示零和正整数。unsigned int = int![请添加图片描述](https://img-blog.csdnimg.cn/1e9eb009883f41de880de0ee189a32ac.png)

3.数据类型的取值范围

比特鹏哥2-数据类型和变量【自用笔记】_第2张图片
比特鹏哥2-数据类型和变量【自用笔记】_第3张图片

sizeof 展示字节大小— 计算机中单位:字节

比特鹏哥2-数据类型和变量【自用笔记】_第4张图片
计算机中单位:字节
bit 比特位:存放一个二进制位
Byte 字节:1 byte = 8 bit
kb:1 kb =1024 bit

4.变量 常量

int age = 20;
float weight = 95.6f; //防止出现警告

4.1 变量

创建变量(数据类型 变量名)

比特鹏哥2-数据类型和变量【自用笔记】_第5张图片

创建变量的时候可以进行初始化

比特鹏哥2-数据类型和变量【自用笔记】_第6张图片

变量:全局变量 /局部变量
 全局变量:定义在({})以外的变量
 局部变量:定义在({})以内的变量------作用域:局部变量所在的局部范围
int a= 100; //全局变量
int main ()
{
int b = 20; //局部变量
}

/// 全局变量与局部变量可以同时存在,但当两者名字一样的,局部变量>全局变量。
// 建议全局变量与局部变量的名称尽量不要相同。

内存的三个区域: 栈区,堆区,静态区
比特鹏哥2-数据类型和变量【自用笔记】_第7张图片

变量的使用
 //计算两个数的和
 int num1 = 0;
 int num2 = 0;
 scanf("%d%d",&num1,&num2);
 int sum = 0;// c语言规定,变量要定义在当前代码块的最前面【最好就是把这句话写到定义的位置】
 sum =num1+num2;
 printf("sum = %d/n",sum);
 return 0;
 
 
 //输入数据--使用输入函数
 //输入函数: scanf("%变量类型”,&变量名称)

变量的作用域和生命周期

作用域:

	全局变量的作用域是整个工程。
	局部变量的作用域是变量所在的局部范围。

生命周期:

	全局变量的生命周期:整个程序的生命周期
	局部变量的生命周期:进入作用域生命周期开始,出作用域生命周期结束。

4.2 常量

const修饰的常变量
//const 后,num后续不可以修改。
const int num =4;
define定义的标识符常量
#define Max 10 //define定义的标识符常量

int main(){
printf("%d\n",MAX);
return  0;
}
枚举常量:可以一一列举
//性别:男,女,
//三原色:红、黄、蓝
//星期: 1,2,3,4,5,6,7

enum Sex
{
MALE;
FEMALE;
}

int  main()
{
printf("%d\n",MALE);
printf("%d\n",FEAMALE);

return 0;
}



>>>>>>输出结果:
0
1

5.算术操作符:+、-、*、/(除法)、%(取模)—【双目操作符】

5.1 /(除法)

除法两端都是整数,结果也只能是整数
除法两端至少有一个hi浮点数,结果才会出现

5.2 % (取模)

运算符%表示求模运算,即返回两个整数相除的余值。这个运算符只能用于整数,不能用于浮点数。
负数求模的规则是,结果的正负号由第一个运算数的正负号决定。

6.赋值操作符:=和复合赋值

从右向左赋值

7.单目操作符:++、–

7.1 ++:前置++,后置++

前置++:先++,后使用
后置++:先使用,再++
//后置++:先使用,再++
int main(){
	int a = 10;
	int b = a++;
	printf("a=%d  b=%d\n",a,b);// a= 11  b=10
	return 0;
}


//前置++:先++,后使用
int main(){
	int a = 10;
	int b = ++a;
	printf("a=%d  b=%d\n",a,b);// a= 11  b=11
	return 0;
}

7.2 --:前置–,后置–

//后置--:先使用,再--
int main(){
	int a = 10;
	int b = a--;
	printf("a=%d  b=%d\n",a,b);// a= 9  b=10
	return 0;
}


//前置--:先--,后使用
int main(){
	int a = 10;
	int b = --a;
	printf("a=%d  b=%d\n",a,b);// a= 9  b=9
	return 0;
}

单目操作符的sizeof

比特鹏哥2-数据类型和变量【自用笔记】_第8张图片

单目操作符:~(按二进制位取反)

比特鹏哥2-数据类型和变量【自用笔记】_第9张图片
比特鹏哥2-数据类型和变量【自用笔记】_第10张图片

8.强制类型转换

()类型
int a =3.14 //a是int类型,3.14是double类型,两边类型不一样,会报警。

为了消除报警

int a =(int ) 3.14 //进行强制类型转换。

9.scanf和printf介绍

scanf

	vs认为scanf函数不安全,考虑使用scanf_s替换
	解决办法:
	①在当前代码的第一个加上:#define   _CRT SECURE NO_WARNINGS 1
	②#define  _CRT SECURE NO_WARNINGS 1
#define _CRT_SECURE_NO_WARNINGS 1

你可能感兴趣的:(比特鹏哥C语言学习,C语言学习,笔记,c语言,开发语言,学习,算法)