第一节:变量类型
#define _CRT_SECURE_NO_WARNINGS 1
//“#”开头的均为预处理命令
//在编译的时候通过#define设置编译环境
#include<stdio.h>
//包含一个叫stdio.hd的文件(std-标准 standard input output)
int main()//主函数-程序的入口-main函数有且仅有一个
//int是整型
//main前面的int表示main函数调用返回一个函数值
{
//这里开始设计程序
printf("Hello World!\n");//printf-print function-打印函数
//printf是库函数,通常包含在标准库中,这是C语言标准的一部分。
//库文件导入#include<stido.h>
// return 0;//返回整数0
//char - 字符数据型
char ch = 'A';//内存
printf("%c\n",ch);//%c--打印字符格式的数据
//int - 整型
int age = 20;
printf("%d\n", age);//%d--d打印整型十进制数据
//short - 短整型
//long - 长整型
//long long - 更长整型
long num = 100;
printf("%d\n", num);
//float - 单精度浮点数
float f = 5.0;
printf("%f\n", f);
// double - 双精度浮点数
double d = 3.14;
printf("%lf\n", d);//是小写的LF
//%d - 打印整型
//%c - 打印字符
//%f - 打印浮点数字-打小数
//%p - 以地址的形式打印
//%x - 打印16进制数字
//······
//sizeof - 返回一个对象或类型所占的内存字节数
printf("%d\n", sizeof(char));// 1
printf("%d\n", sizeof(short));// 2
printf("%d\n", sizeof(int));// 4
printf("%d\n", sizeof(long));// 4
printf("%d\n", sizeof(long long));// 8
printf("%d\n", sizeof(float));// 4
printf("%d\n", sizeof(double));// 8
// pb>tb>gb>mb>kb>byte-字节>bit-比特位
//二进制0或1是一个bit位
//一个字节= 8个bit位的大小
//其余是1024个
//声明变量方法:类型+变量名+赋予的值;
short age1 = 20;//向内存申请2个字节=16个bit位,用来存放20
float weight = 95.6;//向内存申请4个字节,存放小数;
//f是:默认声明的小数是double双精度浮点类型,加f尾缀是声明是float单精度浮点类型保证精度(如尾缀加f,d,l(是L不是1))
return 0;
}
第二节:变量的生命周期及作用域
int num2 = 20;//全局变量 - 定义在代码块{}之外的变量
int main()
{
int num1 = 10;//局部变量 - 定义在代码块{}内部的变量
printf("%d %d\n", num1, num2);//局部变量和全局变量的名字不要相同,容易误会,产生BUG
//当局部变量与全局变量名字相同时,局部变量赋予的值优先
{
int num = 10;
}
//printf("%d\n", num);
//局部变量的赋值,在{}外无法使用
return 0;
}
int main()
{
//计算两个数之和
int num1 = 0;
int num2 = 0;
//输入数据 - 使用输入函数scanf
scanf("%d%d", &num1,&num2);//取地址符号&
int sum = 0;
//C语言语法规定,变量要定义在当前代码块的最前面(定义在int num哪里定义),C++可以哪里用哪里去定义
sum = num1 + num2;
printf("sum = %d\n", sum);
}
//局部变量的作用域是变量所在的局部范围(如代码块内)
//全局变量的作用域是整个工程
//生命周期
//变量的生命周期指的是变量的创建到变量的销毁之间的一个时间段
//局部变量的生命周期是:进入作用域生命周期开始,出作用域生命周期结束
//全局变量的生命周期是 : 整个程序的生命周期(不同源文件的全局变量,声明后就可以使用)
int global = 2023;
int main()
{
printf("%d\n", global);
extern int g_val;//声明extern外部符号的
printf("g_val = %d\n",g_val);
return 0;
}