初识C语言

1. C语言是什么?

在现实生活中,人与人交流使用的是自然语言,如汉语 / 英语 / 日语等.

既然是学习计算机,那么人应该怎么与计算机交流 呢? 答案是使用计算机语言.

迄今已知被创造的计算机语言已经有上千种 了,人们是通过计算机语言写程序 ,给计算机下达指令 ,让计算机工作的.

而我们今天要了解的C语言 就是众多计算机语言之中的一种,当然现在比较常用的C++ / Java /Go / Python 等也都是计算机语言.

2. C语言的历史和辉煌

C 语言由丹尼斯・里奇(Dennis Ritchie)在贝尔实验室,为开发 Unix 系统而设计,1972 年正式诞生.

下面是C语言的起源的发展历程,距今已有五十余年,可谓非常悠久:

而上方的人物就是C语言之父:丹尼斯·里奇(Dennis Ritchie)

3. 编译器的选择VS2026

3.1 编译和链接

C语言 是一门编译型计算机语言 ,其源代码都是文本文件 ,而文本文件本身无法执行 ,因为计算机本身就只能理解二进制数字'0'和'1' ,必须通过编译器翻译链接器的链接 ,生成二进制的可执行文件,这个可执行文件才能执行.

C语言的源代码是放在以.c为后缀的文件 中的,要得到最终可运行的可执行程序,详细的中间要经历预处理(Preprocessing)→ 编译(Compilation,生成汇编代码.s)→ 汇编(Assembly,生成目标文件.o/.obj)→ 链接(Linking,生成可执行文件.out/.exe)四个过程.

⼀个工程⼀般都会有多个源文件组成,如下图所示,演示了源程序经过编译器和链接器处理的过程:

注:

1.每个源文件(.c) 单独经过编译器处理生成对应的目标文件(.obj为后缀的文件).

  1. 多个⽬标⽂件和库⽂件 经过链接器处理 ⽣成对应的可执⾏程序(.exe⽂件).

3.1.1详细过程:

(1). 预处理:

处理**#开头的指令** / 删除代码中的注释.

最终输出**.i 为后缀的文件(纯C代码文本).**

(2). 编译:

把C代码翻译成汇编语言.

语法检查 / 优化代码 / 生成汇编指令.

最终输出以**.s 为后缀的文件(汇编代码).**

(3). 汇编:

把汇编代码翻译成机器码(二进制指令).

生成目标文件 / 只翻译当前文件,不处理外部函数.

输出文件:.o (Linux/macOS)或 .obj (Windows)

(4). 链接(Linking)

多个目标文件 + 库文件(如 libc)合并.
解析函数调用(如 printf ) / 合并代码段、数据段 / 填充地址 .

最终输出:可执行文件 Linux/macOS:无后缀 / a.out 或 Windows .exe

这就是在Windows电脑 上C语言程序生成的exe可执行文件.

3.2 编译器的对比

C语言是一门编译型 的计算机语言,需要依赖编译器将计算机语⾔转换成机器能够执⾏的机器指令

那我们常⻅的C语⾔编译器都有哪些呢?

比如:msvc、clang、gcc就是⼀些常见的编译器,当然也有⼀些集成开发环境如:VS2022、VS2026 / XCode、CodeBlocks、DevC++、Clion等.

集成开发环境(IDE)⽤于提供程序开发环境的应⽤程序 ,⼀般包括代码编辑器、编译器、调试器

和图形用户界面等工具。集成了代码编写功能、分析功能、编译功能、调试功能等⼀体化的开发软件服务套。

(1). VS2022集成了MSVC(安装包较大⼀些,安装简单,无需多余配置,使用起来非常方便)

(2). XCode集成了clang(苹果电脑上的开发⼯具)

(3). CodeBlocks集成了gcc(这个工具比较小众,需要配置环境,不太推荐)

(4). Dev-C++ 是轻量级 IDE,集成 MinGW 版 GCC,适合入门 / 竞赛,但调试功能弱,不利于代码风格的养成,不适合大型项目.

(5). CLion 是跨平台 IDE,默认使用 CMake 构建系统,编译器可自由配(GCC/Clang/MSVC),适合中高级开发者,新手不推荐(配置门槛高)

整体考虑,推荐⼤家安装VS2022或VS2026 的社区版本学习,免费,使用方便,工作中常见

不懂得朋友可以在B站上搜索下载装配教程,在这里我推荐鹏哥C语言的教程,非常的胎教,简单易懂.

3.3 VS2022的优缺点

优点:

VS2022是⼀个主流的集成开发环境,企业中使⽤较为普遍

VS2022包含了:编辑器+编译器+调试器,功能强大

直接安装即可使用,基本不用额外配置环境,上⼿容易

默认界面是中文的,初学者友好

缺点:

功能丰富,安装包大,占用空间多。

4. VS项目和源文件、头文件介绍

在VS上写代码,我们是需要创建项⽬的,直接新建项⽬ 就可以了。

在项⽬中就可以添加源文件和头文件

C语⾔把**.c 为后缀的文件称为源文件** ,把**.h为后缀的文件称为头文件**。
头文件和源文件在VS中的展示 头文件和源文件在磁盘上的展示

头文件和源文件在VS中的展示

相关推荐
炸膛坦客6 小时前
单片机/C/C++八股:(二十六)IIC 专题(I²C)---- 上集
c语言·c++·单片机
程序员Rock14 小时前
上位机开发-MODBUS面试常见问题
c语言·c++·面试·职场和发展·上位机
blevoice19 小时前
抖抖燃脂机单 AC6966B 主控调试踩坑:Type-C 整机供电喇叭无声排障
c语言·开发语言·单片机
小小晓.19 小时前
C++小白记:C风格字符串和数组用法
c语言·开发语言·c++
深念Y20 小时前
开发者如何清理和迁移C盘堆积的垃圾
c语言·开发语言
十月的皮皮20 小时前
STM32从零到量产开发:四路继电器工业控制模块开发实战笔记(小白视角)
c语言·笔记·stm32·stm32cubemx·hal库
不正经学生20 小时前
C 语言函数深入剖析(基础篇)—— 从零理解函数的每一个细节
c语言·开发语言·数据结构·算法·c#
天空'之城1 天前
C 语言工业级通用组件手写 10:字节序转换
c语言·字节序·大小端·嵌入式通信·工业级组件
C++ 老炮儿的技术栈1 天前
OpenCV 实现社保卡透视矫正:Hough 直线提取四角并转正证件图像
c语言·c++·人工智能·opencv·算法·计算机视觉·c
我叫洋洋1 天前
C ++ [ hello world ]
c语言·c++·算法