【其他专项实践类】信息工程学院—— Linux&C心得

实训已经到了第三天,除了复习昨天的linux基础指令和vim编辑器外,我们在今天的学习中对C语言与GCC进行了更深一步的学习。

首先,我们了解了编程语言和编程语言发展史及编程语言的分类等等。编程语言的各种用途已经在之前的课程中学习过,但每一次再学的时候还是能让我感受到编程语言的强大之处,无数的电子设备、无数的软件都是出自于这些语言,正处于信息时代的我更能切身体会到它们在我们生活中的重要性。在编程语言发展史的学习中,我了解到编程语言是通过种种改变才达到现在的模样。从复杂庞大的机器语言到汇编语言,再到更接近人类自然语言的高级语言。C语言正是面向过程的编译型语言。同时也复习到了字符,%d十进制整数,%x十六进制整数,%c字符,%f浮点数,%s字符串,\n换行,\t制表符等等。

之后,我们又学习了GCC编译器的部分知识。GCC全称GNU C Compiler,GNU是开源软件组织,GCC是免费、开源的编译器、性能十分优秀。在课程中,我们了解到了GCC的语法格式和C语言的编译过程。C语言的编译过程分为四步,第一步为预处理,执行预处理命令;第二步为编译,将C语言代码转换成汇编代码;第三步为汇编,将汇编代码转换成二进制的目标文件;第四步为链接,将多个目标文件和库文件链接生成二进制可执行文件。以名称hello为例,这四步分别为gcc -E hello.c -o hello.i,gcc -S hello.i -o hello.s,gcc -c hello.s -o hello.o,gcc hello.o -o hello。但是也有简单方法,即gcc files直接生成a.out或gcc files -o filename生成指定的文件名。

最后,我们复习了C语言语法。分支结构的if-else,switch,循环结构的while,do-while,for。

今天也是收获满满的一天,希望在之后的学习中我可以越变越好,加油!