C语言
Edison Tao
Linux爱好者
展开
-
gcc编译器
1. gcc基本用法介绍名称:-GNU Compiler Collection 现在已经变成了一个集合,刚开始只针对C语言的管理与维护-GNU项目对C/C++编译的控制-预处理(Preprocessing)-编译(Compilation)-汇编(Assembly)-链接(Linking)2. 安装如果只装了GCC没有装g++通过如下命令安装apt-get install g++3.gcc的使用3.1 基本使用格式gcc [选项] <文件名>选项 -o file.原创 2021-07-02 11:32:06 · 150 阅读 · 0 评论 -
C深度解析
<<C深度解析>>第一章 C编译、链接基础知识铺垫1 extern和static的作用(1)static 1)修饰函数 static修饰函数时表示,该函数只在本文件有效,也就是只能被本文件的其他函数调用, 其他文件不能调用(引用)。 例子: a.c b.c int fun1(void) s...原创 2021-07-02 10:47:30 · 279 阅读 · 0 评论 -
C语言可执行文件的格式
程序基于OS运行时,不同OS所需要的可执行文件格式不同,Windows需要的是PE格式,Linux需要的是ELF格式。为了得到各自OS需要的可执行文件格式需要选择针对不同操作系统的编译器。在没有操作系统的时候,裸机上运行的程序为bin格式,我们需要专门选择针对逻辑编译器,它会将程序编译bin格式的裸机程序。...原创 2020-05-28 13:51:01 · 1724 阅读 · 0 评论 -
什么是链接,为什么需要链接?
为什么需要链接 在实际开发中,我们一定是多文件编程,所有文件在编译后,需要合在一起,合在一起的过程就是链接的过程。 每一个源文件(就是.c文件,上图中的程序1)都有对应的零碎文件(就是.h文件),通过预编译(通过#include实现)把.c和.h文件整合成一个组合C文件,这个组合C文件的扩展名为.i。把组合C文件编译成汇编文件.s,目标文件为机器指令(放在一个.o文件当中),单个目标文件是不能工作的,因为各个目标文件是相互支撑工作的。 把各个...原创 2020-05-27 16:06:12 · 13559 阅读 · 3 评论 -
c语言项目实战之学生成绩管理系统笔记
c语言项目实战之学生成绩管理系统1.项目简介 实现一个学生成绩管理系统,要求可扩展、数据可保持、维护性好 可以对学生成绩进行管理: 成绩添加、删除、查询、修改、保持、统计等基本功能 成绩在磁盘上保持 系统可扩展性好:可以很方便扩展其他功能 系统健壮性好:对于不同的非法操作都可以应对,系统不崩溃 系统兼容性好:可以在不同的硬件平台及操作系统上...原创 2019-04-03 18:13:48 · 2816 阅读 · 0 评论 -
C语言运算符优先级和结合性一览表
所谓优先级就是当一个表达式中有多个运算符时,先计算谁,后计算谁。这个其实我们在小学学算术的时候就学过,如1+4÷2。但是C语言中的运算符已经远不止四则运算中的加减乘除了,还有其他很多运算符。当它们出现在同一个表达式中时先计算谁后计算谁呢?所以本节还是有必要讲一下的。最后我还会将所有运算符展示出来,然后告诉你哪个优先级高、哪个优先级低。首先不需要专门记忆,也没有必要。因为作为初学者,哪个优先级高...转载 2019-02-11 14:49:52 · 1617 阅读 · 0 评论 -
C语言基础
1.概念(1)源文件:源文件即源代码文件,C语言源文件后缀名是.c(2)头文件:头文件后缀名为.h,C语言代码由源文件和头文件组成。(3)关键字:关键字是C语言征用的一些字,这些字在C语言中代表特殊含义,已经被C语言定义好了,轮不到我们用了。我们必须搞懂每个关键字的所有含义和用法,否则就看不懂C语言程序。(4)注释://或/* */,注释是给程序员看的,不是给机器看的。编译器编译...原创 2018-12-06 18:25:26 · 523 阅读 · 0 评论 -
C语言笔记
1. 流的概念输入输出I/O与流:I/O是内存RAM与外设之间的一个交换。 I/O是相对于内存RAM来说的流与缓冲区:RAM与逻辑设备之间有一个缓冲区,比如逻辑设备是一个键盘,RAM与键盘设备之间有一个缓冲区,RAM是去缓冲区里面取数据,不是到键盘里面取数据。比如scanf()函数。注意:函数getch是直接去键盘里面取数据。本来我们是通...原创 2018-09-25 20:21:18 · 417 阅读 · 0 评论