C语言自学路程记录
2021/2/27 C语言学习开始
由于去苏州大学进行成人本科的学习,有考试需求,也有自身提升方面的规划,所有在进行Java开发工作的同时,进行C语言的学习。从今天开始,在此进行学习的记录和总结
在此展开学习之旅
在学习C语言之前,个人对于c语言的了解还不是太深,虽然我是搞Java开发的,但是我大专的专业并不是计算机方向,学习编程也是自己的想法,自从大专毕业之后,没有去从事过学习的专业的工作,而是向进入计算机行业,也没啥其他想法,就是计算机行业钱多,生命力强。即使我从事了该行业,我对计算机行业内的各个方向还是不同,我没有学习过数据结构,算法,操作系统,计算机网络这些东西,但是,在工作之后,发现了这些知识的重要性, 这些知识现在也在我的学习范围内。争取在这个行业发展的更好!!!fighting!!!
首先,一般我的学习途径就是B站上的各类网课,各个培训机构在网络上分享的教学视频。
学习总结
什么是C语言
是一门计算机语言
计算机语言是什么?
人和计算机交流的语言(C/C++/Java/Python等
语言的发展
二进制语言 0 1
汇编语言
B语言-C语言-C++ ---高级语言
第一个C语言程序 万物皆是hello world
创建工程
| c代码
| .c - 源文件
| .h -头文件 head
添加源文件
写代码
#include<stdio.h>
| /*编译预处理命令
| stdio.h是头文件 标准输入输出函数库
| 头文件是扩展名为 .h 的文件
| 包含了 C 函数声明和宏定义
| 分为 程序员编写的头文件和编译器自带的头文件
| 包含一个交stdio.h的文件
| std - 标准 standard input output
| */
int main(void) //main()主函数 程序的入口 int基本类型 表示函数最终返回一个int类型的值
{
printf("hello world"); //在控制台打印 hello world并换行
return 0; //返回0;
}
数据类型
C语言数据类型
char //字符数据类型 1字节
char a = 'A'; //创建一个字符类型变量,名为a ,变量的值为 'A'
printf("%c", a);//打印输出字符格式的变量a %c是打印字符格式的数据
short //短整型 2字节
int //整型 4字节
int num = 15; //创建一个整型变量,变量名为 num ,变量值为15
printf("%d\n", num); //打印输出整型十进制数据,打印完成后,换行 "%d\n"是打印整型十进制数据,打印结束后换行
long //长整型 4字节 也有可能是 8字节
long long //更长的整型 8字节
float //单精度浮点数 4字节
double //双精度浮点数 8字节
变量、常量
**变量**
局部变量
全局变量
当局部变量名和全局变量名建议不要相同,容易误会,产生bug
当局部变量名和全局变量名相同时,局部变量优先
定义变量
变量类型 变量名 = 变量值;
变量的作用域和生命周期
作用域:
局部变量作用域是,变量所处代码块
全局变量作用域是,整个工程
生命周期:
局部变量的生命周期:进入作用域生命周期开始,退出作用域生命周期结束
全局变量的生命周期:整个程序的生命周期
**常量**
C语言中的常量和变量的定义的形式有所差异
C语言中的常量分为以下几种
字面常量
const修饰的常变量
#define定义的标识符常量
枚举常量
字符串+转义符+注释
字符串
由双引号引起的一串字符叫做字符串
字符串长度
转义符
使用\符号改变字符原有作用,n 加上\之后是换行的含义
\0 是将0的改为字符串的结束符
\t是在使用\t的位置空出一个水平制表符
\ddd ddd表示1~3个八进制数字
\xdd dd表示2个十六进制数字
...........................
注释
/* */ 不支持嵌套
//
选择语句
if语句
#include <stdio.h>
int main()
{
int c = 5;
if (c==5)
{
printf("%d", c);
}
else
{
printf("%d", 4);
}
return 0;
}
循环语句
for循环
for (int i = 0; i < 15; i++) {
printf("%d",i);
}
while循环
int c = 16;
while (c > 15) {
printf("%d", c);
c++;
if (c > 30) {
return c;
}
}
函数
库函数 printf() main() scanf()等都是库函数
自定义函数方法规则由自己定义 相当于在Java中的定义方法。
#include <stdio.h>
//自定义加法函数
int Add(int x, int y) {
int z = x + y;
return z;
}
int main()
{
int sum = 0;
int num1 = 10;
int num2 = 20;
sum = Add(num1, num2);//使用加法函数
printf("sum:%d\n", sum);
return sum;
}
数组
一般情况存储内容,是向内存申请空间进行存储,如果我们存储多个有意义的同类型
的内容,就要像内存申请多个存储地址,占用内存,这是我们可以使用数组来保存这
多个同类型的内容,且只需要向内存申请一次空间。目前学习到的定义数组的方式和Java基本相同,就不做较多的练习。
今天的学习就到现在,之后继续记录,上面的一些都是自己的理解和总结,如果有不正确的地方,希望指正