主要学习了C语言的基础知识
1.主函数int main()-主函数-程序的入口-main函数有且仅有一个。main前面的int表示main函数调用返回一个整型数。viod main()的写法过时不用了。
2. 当调用标准函数时,在主函数之前要先#include包含一个叫stdio.h的文件,std-标准的input output 文件。
3. 数据类型/字节
char //字符,1个字节,8个比特为,2^8个数,最大值2^8-1
short //短整型,2个字节,16个比特位,2^16个数,最大值2^16-1
int //整型,4个字节,32个比特位,2^32个数,最大值2^32-1
long //长整型,4个字节,32个比特位,2^32个数,最大值2^32-1
long long //更长整型,8个字节,64比特位,2^64个数,最大值2^64-1
float //单精度浮点数,4个字节,32个比特位,2^32个数,最大值2^32-1
double //双精度浮点数,8个字节,64个比特位,2^64个数,最大值2^64-1
打印数据格式size的例子:
int main()
{
//printf("%d\n", sizeof(char));//1个字节,8个比特为,28个数,最大值28-1
//printf("%d\n", sizeof(short));//2个字节,16个比特位,216个数,最大值216-1
//printf("%d\n", sizeof(int));//4个字节,32个比特位,232个数,最大值232-1
//printf("%d\n", sizeof(long));//4个字节,32个比特位,232个数,最大值232-1
//printf("%d\n", sizeof(long long));//8个字节,64比特位,264个数,最大值264-1
//printf("%d\n", sizeof(float));//4个字节,32个比特位,232个数,最大值232-1
//printf("%d\n", sizeof(double));//8个字节,64个比特位,264个数,最大值264-1//short int age = 20;//向内存申请2个字节=16bit,用来存放20;
//return 0;
}
4. 打印数据类型的写法
%f 打印浮点数字-打小数
%p 以地址形式打印
%x 打印十六进制
%o
%c--打印字符格式的数据
%d--打印整型十进制数据
打印数字类型的例子:
int main()
{
char ch = 'A';//内存
int age = 20;
double d = 3.14;
printf("%lf\n", d);
printf("%c\n", ch); //%c--打印字符格式的数据
printf("%d\n", age);//%d--打印整型十进制数据
return 0;
}
5. 字节-计算机的单位,进制1024
1)bit-比特位,计算机最小单位,计算机中:正电为1,负电为0,那么其中的1或0就为1个比特位。
2)byte-字节,1 byte=8 bit
3)进制:1Kb=1024byte; 1Mb=1024kb,1gb=1024kb,1tb=1024gb,1pb=1024tb;
7. 求和,输入函数scanf
int main()
{
//计算两个数的和;
int num1 = 0;
int num2 = 0;
int sum = 0;//c语言规定,变量要定义在当前代码块的前面
//输入数据-使用输入函数scanf
scanf("%d%d", &num1, &num2);//&为取地址符号 ,运行后要重新赋值给num1,num2
sum = num1 + num2;
printf("sum = %d\n", sum);
return 0;
}
8. 函数调用
int global = 2020;//全局变量的作用域在全局
void test()
{
printf("test()-- %d\n", global);
}
int main()
{
test();//调用test函数;
printf("%d\n", global);
return 0;
}
9.声明
int main()
{
///未声明的标识符,需要声明
extern int g_val;//全局变量的作用域范围是整个工程,在另一个源文件中定义的全部变量,在这里声明后,一样可以使用;
printf("g_val = %d\n", g_val);
return 0;
}
工程开始:
#define _CRT_SECURE_NO_WARNINGS 1
#include
//int main() //主函数-程序的入口-main函数有且仅有一个
//{
// printf("hello word\n"); //printf-打印函数,是C语言提供的库函数
// return 0; //返回 0
//}
6. 全局变量和局部变量
1)全局变量,-定义在代码块{}之外的变量
2)局部变量-定义在代码块内部
3)局部变量和全部变量的名字不要一样,容易误会,产生bug
4)当局部变量和全部变量重名,局部变量优先
5)局部变量的作用域,就是他所在的大括号,所在的局部代码
6)全局变量的作用域范围是整个工程,在另一个源文件中定义的全部变量,在同工程的其他源文件中声明后,一样可以使用;
7)全局变量的生命周期是整个工程
8)局部变量域的生命周期是进入作用域开始,出作用域结束
例子:
全部变量和局部变量定义:
//int num2 = 20;// 全局变量,-定义在代码块{}之外的变量
//int main()
//{
// int num1 = 10;//局部变量-定义在代码块内部
// return 0;
//}
全局变量和局部变量重名的例子:错误示范
int a = 100;
int main()
{
int a = 10;
//局部变量和全部变量的名字不要一样,容易误会,产生bug
//当局部变量和全部变量重名,局部变量优先
printf("%d\n", a);
return 0;
}
全局变量的例子:
int a = 10;
int main()
{
printf("%d\n", a);
return 0;
}
局部变量作用域的理解的例子:
int main()
{
int num = 0;//局部变量的作用域,就是他所在的大括号,所在的局部代码
{
printf("num = %d\n", num);
}
return 0;
}
局部变量声明例子:
int main()
{
{
int a = 10; //局部变量域的生命周期是进入作用域开始,出作用域结束
printf("a=%d\n", a);//ok
}
//printf("a=%d\n", a);//error
return 0;
}