嵌入式Linux C(一)——概述

C语言知识体系

  • C语言概述(历史、特点、标准)
  • 数据类型(基本数据类型、输入输出)
  • 基本语句及表达式、运算符(条件语句、循环语句、多路分支、goto语句)
  • 数组(一维数组、二维数组、多维数组)
  • 指针(一维指针、多维指针、数组指针、指针数组、函数指针、函数指针数组)
  • 内存管理(内存是稀缺资源,内存泄露)
  • 函数(函数声明、定义、调用、库函数的使用(字符串处理函数、时间函数、随机数函数))
  • 编码规范(华为编码规范)
  • 预处理(宏定义、宏函数、条件编译)
  • 关键字(static、extern、register、const、typedf、volatile、inline)
  • 位操作(位运算)
  • 复合数据类型(struct、union、enum)
  • 文件操作(打开、关闭、读写、属性设置)
    进度安排
    day1:1,2
    day2:3,4,5
    day3:5,6,8
    day4:6,7,8
    day5:10,9
    day6:11,12

学习目标:

  1. 代码量:1w+;
  2. 书籍阅读:5+;
  3. 笔记:教材

学习要求:

  1. 代码量:力扣(每天1道,30分钟)
  2. 书籍:C语言三剑客、C program、C语言接口与实现、高质量编程……

一、C语言概述

1.1 嵌入式开发中为什么选择C语言

嵌入式开发中操作系统是核心、需要一直,并在上层和底层做开发,而操作系统最核心的是:内核,所有的内核都是由C语言开发,

1.2 为什么内核开发选择C语言

  1. C语言能直接访问和控制硬件(C(硬件复杂操作) VS 汇编(硬件初始化))
  2. C语言运行效率快(运行时语言)解释性语言 VS 运行时语言(C VS java \ C VS C++)
  3. 移植性

1.3 C语言的缺点

面向结构(代码的复用性差、代码的维护性差、代码的扩展性差)

1.4 C语言实现面向对象编程

?????????

1.5 C语言的开发方向

操作系统(上层(库)、底层(BSP、驱动)、实现(内核))、硬件、中间件(sdk)

1.6 C语言发展

一点问题都没有

C语言基础知识

  1. 机器码(运行效率、访问硬件能力)
  2. C语言之父:丹尼斯-里奇
  3. C语言语法标准:K&RC 、c89、c99、c11
  4. C语言语言版本:GNU C + ASCI C
  5. gcc:100%c89 + 部分c99
  6. 什么语言可能以后会替代C语言?
    Go 和 Rust(替代不了)
本书所附光盘使用说明 本光盘中包括了书中所有示例的源代码和书中所有的插图,具体说明如下。 程序代码文件夹中包含了本书的所有源代码。 程序代码\chapter02 文件夹中包含了第2章的示例源程序。其中hello.c和hello.h是2.3.2的源代码,gdb.c是2.4.1的源代码,test.c是动手练练的源代码。 程序代码\chapter06 文件夹中包含了第6章的示例源程序。其中pointer1.c是6.2.2的第一个源代码,pointer2.c是6.2.2的第二个源代码,pointer3.c是6.2.2的第三个源代码,pointer4.c是6.2.3的第一个源代码,pointer5.c是6.2.3的第二个源代码,pointer6.c是6.2.3的第三个源代码,pointer7.c是6.2.3的第四个源代码。 程序代码\chapter08 文件夹中包含了第8章的示例源程序。其中binary_tree.c是二叉树的源代码,list.c是线性链表的源代码。 程序代码\chapter09 文件夹中包含了第9章的示例源程序。其中lock.c是文件锁的源代码,seri.c和seri.h是串口设置的源代码,read_seri.c是读串口的源代码,write_seri.c是写串口的源代码。 程序代码\chapter10 文件夹中包含了第10章的示例源程序。其中alarm_read.c是设置信号函数的源代码,dameon.c是守护进程的源代码,zombie.c是僵尸进程的源代码。 程序代码\chapter11 文件夹中包含了第11章的示例源程序。其中socklib.c是网络相关通用函数的源代码,tracert.c是traceroute的源代码,webserv.c是web服务器的源代码。 程序代码\chapter12 文件夹中包含了第12章的示例源程序。其中skull.c是skull驱动程序的源代码,s3c2410fb.c和s3c2410fb.h是LCD驱动的源代码。 程序代码\chapter13 文件夹中包含了第13章的示例源程序。其中args_cmd.h是解析命令相关的头文件,ctrl.c和ctrl.h是控制命令的源代码,proc_cmd.c是具体操作的源代码,thread.c和thread.h是线程相关的源代码,types.h是类型相关的源代码,net_send.h是网络相关的源代码。 书中插图包含了本书所有的插图。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

周末不下雨

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值