C语言学习,在这里推荐浙江大学翁恺老师的视频,慕课网网址:https://www.icourse163.org/learn/ZJU-9001?tid=9001#/learn/content。笔者的复习笔记也主要是根据该视频进行。本文的主要内容如下
- 程序设计与C语言
计算机和编程语言;C语言历史;C语言框架;编译过程;GCC是什么;Vim/Vi文本编辑器;C语言上机1; - 计算
- 判断
- 循环
- 循环控制
- 数据类型
- 函数
- 数组
- 指针
- 字符串
- 结构类型
- 程序设计
- 文件
- 链表
refer
- C语言编译过程
https://wenku.baidu.com/view/ce5796b068ec0975f46527d3240c844769eaa06a.html- vi编辑器使用
https://blog.csdn.net/h610443955/article/details/117998347
1. 程序设计与C语言 1.1 计算机和编程语言
计算机和人的思维方式不同,计算机最擅长的是重复。
计算机解决问题的方式是将步骤分解,how to do。
程序就是用一种特殊语言写出来的步骤表达,让计算机去执行,并不是与计算机交谈的方式。
计算机的语言是二进制的010101。从顶至下是:算法->程序->计算机语言
C语言在工业界不可替代。C语言从1969年开始,在PDP-7上开发,1973年3月第三版Unix出现C语言编译器,1973年11月第四版Unix完全由C语言编写。
ANSI C,C89,C95,C99,C11是C语言版本,翁恺老师讲解用的C99,其中C11比C99增加的特征有:字节对齐说明符、泛型机制(generic selection)、对多线程的支持、静态断言、原子操作以及对 Unicode 的支持
C语言程序框架如下
#include1.4 编译过程int main(int argc, char *argv[]){ // code below return 0; }
C语言编译器很多,编程软件(IDE)很多,会造成很多方言。我们这里推荐使用Dev c编程软件。如果是Mac OS用户,则可以使用GCC编译器和Vim文本编辑器。
C语言的编译过程分为四个步骤:
- 预处理:由.c文件到.i文件
在该阶段处理"#"符号,将#include包含的头文件直接拷贝到hello.c中;#define定义的宏定义进行替换,删除代码中没有的注释部分 - 编译:由.i文件到.s文件
高级语言编译成汇编语言 - 汇编:由.s文件到.o文件(Windows生成.obj文件)
汇编语言转变成二进制文件 - 链接:由.o文件到可执行文件
将翻译成的二进制文件与需要的库绑定在一起
GCC最早是GNU的C语言编译器,如今已是GNU一些列编译器的集合。
Visual C,Turbo C,Dev C是不同的集成开发环境/编程软件,内置了不同的C语言编译器,其对C标准的实现不同。
一般认为Dev C内置GCC的编译器与C标准更贴切,可能Dev C调试程序没有VC舒服,界面没有VC好看,但是编译效果毫不逊色。
以下操作都在terminal中进行
# 在bash中定位某个文件 cd / # /为根目录 ../为上一级目录 ./为当前目录 ls -al # 展示./目录下所有文件和目录 vi test.c # 在./中创建文件test.c mkdir test # 在./中创建目录test rmdir ./test # 删除./中的目录test rm test.c # 删除.c文件 pwd # 显示当前路径 mv # 移动文件/目录 cp # 拷贝文件/目录 # 从bash进入vi编辑器 vi ./filename # 进入vi编辑器后 h -- 左移一格 j -- 下移一行 k -- 上移一行 l -- 右移一行 w -- 一个单词一个单词后移 i -- 插入 等等1.7 C语言上机1
使用github托管,ssh上传。代码见github
https://github.com/yingmuzhi/C_Learning2022



