主要学习了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;

}