一、数据类型介绍
1.字符型
2.整型
3.浮点型
4.布尔类型
*布尔类型的使用需要包含头文件<stdbool.h>,布尔类型变量的取值是true或false。
*关于signed和unsigned:前者表示有符号,即该类型有正负号,包含负值,后者表示无符号,只包含0和正整数。int类型默认是有符号的,但关键字signed一般省略不写。
二、变量的分类
1.全局变量:在大括号外部定义的变量,使用范围广,在整个项目有效。全局变量作用于全局作用域,生命周期最长,生命周期到程序的结束。
2.局部变量:在大括号内部定义的变量,使用范围局限,只在自己所在的局部范围有效。局部变量作用于该变量所在的大括号内,从进入该大括号到出大括号即是它完整的生命周期,超出自己的范围就会被销毁。
3.作用域和生命周期:作用域和生命周期是对变量进行描述的两个维度。作用域描述了变量可以被引用的范围,如全局作用域、局部作用域、文件作用域;而生命周期就是这个变量可以被引用的时间段,不同的生命周期的变量在内存中的分布不一样。
*如图:局部变量存储在内存的栈区,全局变量存储在内存的静态区,而堆区用来动态内存管理。
三、printf函数
1.基本用法:printf()的作用是将()内的参数文本输出到屏幕上,而f表示format(格式化),表示可以定制文本的输出格式。
如上代码便会在屏幕上打印这串英文Hello,world,且其光标停留在d的后面。一般为使得光标停留在文本的末尾,在其后加上\n使其换行,即printf("Hello,world\n")。
*使用printf时需引用头文件<stdio.h>。
2.占位符:我们在printf函数中使用占位符,表示该位置的值可以由其他值来代替。
该处%d为纯输出文本中的占位符,表示这个位置要由其他值来替换。占位符的第一个字符是%,第二个则取决于该占位符的类型。%d表示该占位符替代的位置为整数。
一段纯输出文本中可以使用多个占位符,常见的占位符有:%d(十进制的整数),%s(字符串),%c(字符),%f(float类型和double类型的小数)。需要注意的是,除了%c其他占位符会自动忽略起始的空格,但%c会将其打印出来。而%s的处理是碰到空格停止,将其作为一个字符串来打印。
四、强制类型转换
如果一个运算符两边的运算数类型不一样,先要将其转换为相同的类型,即低类型转换为较高类型。低数据类型到高数据类型如下:
强制转换类型的规则为:(类型说明符)(表达式)
如上图,3.14直接放进整型中时计算机会报错,此时需要将其强制类型转换为整型类型。
本期的内容就到这里啦,下次我会为大家介绍分支和循环语句,我们下期见!