C语言学习大纲-从入门到入土

timg.jpg

一、C语言基础

    1、C语言特点及其运行环境
    2、C语言和面向对象语言C++、JAVA的比较
    3、介绍基本数据类型、运算符、关系表式
    4、条件判断语句if+else、If + else if + else、switch +Csae语句
    5、循环语句:while、do + while、for
    6、位操作运算符:&、|、~、^
       逻辑运算符:&&、||、!。

二、C语言函数

    1、自定义的函数声明和定义、以及使用
    2、函数的实参和形参的区别,函数的传值调用和传址调用
    3、Main函数的参数、返回值,与其父进程的关系
    4、递归函数的栈实现原理应和应用特点
    5、迭代函数的特点和应用
    6、C库函数里标准I/O的缓冲区

三、C语言数组

    1、数组的定义和在内存中的分配排布
    2、数组的完全初始化、部分初始化和不初始化
    3、数组名在C程序里的意义
    4、数组名在函数传参过程中代表的含义及其作用
    项目:数字转换器

四、C语言的灵魂:指针

    1、指针的定义,和在内存中扮演的角色
    2、宏定义
    3、Const关键字与普通变量、指针变量之间的关系
    4、指针变量运算关系的实质
    5、函数指针存在的意义及其使用
    6、内存之:堆内存的使用和释放
    7、引入内存中,虚拟内存和内存映射的关系

五、C语言文件操作

    1、标准I\O和系统API之间的关系
    2、阻塞函数和非阻塞函数的区别以及如何设置
    3、如何打开文件(open\fopen)、读写(writre\fwrite)文件、关闭      (close/fclose)文件
    4、内存之:文件映射区
    5、静态文件和动态文件管理方式
    6、API之:获取文件信息函数(stat)和系统时间函数
    7、多进程和多线程
    项目1:C语言实现终端shell命令:ls
    项目2:C语言实现终端shell命令:ls-l
    项目3:C语言实现文件下载(C\S架构)
    项目4:C语言实现网页访问(B\S架构)
    项目5:多进程执行应用程序(二进制文件)
    项目6:多进程实现读取硬件设备
    项目7:多线程读取硬件设备
    项目8:多线程统计终端字符串个数实战
    项目9:多进程间通信实战

六、数据结构

    1、结构体struct的定义、和自身各成员的类型
    2、结构体成员之间内存对齐的实质和指令对齐的操作
    3、结构体数组和指针的应用
    4、Linux内核中offsetof和container_of宏
    5、结构体位字段的使用意义
    项目:柔性数组实战
    7、Typedef关键字的作用及其使用
    8、数组指针、指针数组、函数指针、指针函数
    9、用struct模拟面向对象语言实现多态和封装
    10、公用体的实质和测试大小端实战
    11、 枚举定义和使用
    项目1:C语言实现密码锁
    项目2:C语言模拟ATM交易系统

七、复合数据和算法

   1、模拟数据结构栈的运行机制
   2、模拟数据结构队列的运行机制
   3、C语言常用算法:冒泡排序、选择排序、快速排序、插入排序、shell排序、二分法
   4、单链表的实现及算法:链表的创建、遍历、头插法、尾插法、以及链表的逆序
   5、双链表的实现及算法:链表的创建、遍历、头插法、尾插法、以及链表的逆序
   6、linux内核源码中循环双链表和内核宏的实战分析
   7、数据存储:数组存储和链式存储
   8、二叉树的实现以及算法:前序、中序、后序遍历。
   9、二叉树遍历的递归实现和实战

本博客所有文章如无特别注明均为原创。作者:odaycaogen复制或转载请以超链接形式注明转自 123``blog
原文地址《C语言学习大纲-从入门到入土

相关推荐

发表评论

路人甲 表情
Ctrl+Enter快速提交

网友评论(0)