第1讲:C语言常见概念.pdf
1.C语⾔是什么? 2.C语⾔的历史和辉煌 3.编译器的选择VS2022 4.VS项⽬和源⽂件、头⽂件介绍 5.第⼀个C语⾔程序 6.main函数 7.printf和库函数 8.关键字介绍 9.字符和ASCII编码 10.字符串和\0 11.转义字符 12.语句和语句分类 13.注释是什么?为什么写注释?? 1.C语⾔是什么? ⼈和⼈交流使⽤的是⾃然语⾔,如:汉语、英语、⽇语那⼈和计算机是怎么交流的呢?使⽤计算机语⾔。 ⽬前已知已经有上千种计算机语⾔,⼈们是通过计算机语⾔写的程序,给计算机下达指令,让计算机⼯作的。 C语⾔就是众多计算机语⾔中的⼀种,当然C++/Java/Go/Python都是计算机语⾔。 2.C语⾔的历史和辉煌 C语⾔最初是作为Unix系统的开发⼯具⽽发明的 3.编译器的选择VS2022 3.1编译和链接 C语⾔是⼀⻔编译型计算机语⾔,C语⾔源代码都是⽂本⽂件,⽂本⽂件本⾝⽆法执⾏,必须通过编译器翻译和链接器的链接,⽣成⼆进制的可执⾏⽂件,可执⾏⽂件才能执⾏。 C语⾔代码是放在.c为后缀的⽂件中的,要得到最终运⾏的可执⾏程序,中间要经过编译和链接2个过程。 ### C语言基础概念详解 #### 一、C语言概述 1. **定义**: - C语言是一种通用的编程语言,被广泛应用于操作系统、嵌入式系统、游戏开发等多个领域。它是由丹尼斯·里奇在20世纪70年代初为Unix操作系统设计的。 2. **特点**: - 高效:C语言接近硬件,运行效率高。 - 可移植性强:编写好的C程序可以在不同的操作系统和硬件平台上运行。 - 功能强大:支持结构化编程,并且提供了丰富的数据类型和运算符。 3. **历史背景**: - C语言最初是为了编写Unix操作系统而设计的,后来逐渐成为一种流行的编程语言。 - 它的发展历程中吸收了许多其他语言的优点,同时也启发了后续许多高级语言的设计。 #### 二、C语言的历史与辉煌 - C语言自诞生以来,一直是计算机科学领域的重要组成部分。 - 它的发展不仅促进了操作系统领域的进步,也为后续的多种编程语言奠定了基础。 - 许多著名的操作系统如Unix、Linux等都采用了C语言作为主要的开发工具。 - 在计算机科学教育中,C语言也是学生学习编程的基础课程之一。 #### 三、编译器选择与编译过程 1. **编译器的选择**: - 对于初学者来说,选择一个合适的编译器至关重要。 - Visual Studio 2022(简称VS2022)是一个非常优秀的集成开发环境(IDE),适合C语言的学习和开发。 - 其他常见的编译器还包括GCC、Clang等,但VS2022因其强大的集成能力和丰富的功能而受到广泛推荐。 2. **编译与链接**: - C语言程序由文本文件组成,这些文本文件需要通过编译器进行编译和链接,才能生成可执行文件。 - 编译过程主要包括词法分析、语法分析、语义分析以及目标代码生成等步骤。 - 链接过程则是将多个目标文件和库文件合并为一个可执行文件的过程。 3. **VS2022的优缺点**: - **优点**:功能齐全、易于上手、界面友好;支持代码编辑、编译、调试等多种功能;广泛应用于企业和教育领域。 - **缺点**:安装包较大,占用资源较多;对于轻量级应用可能显得有些“臃肿”。 #### 四、项目与文件管理 - 在VS2022中,通常需要创建一个新的项目来组织C语言程序。 - 项目可以包含多个源文件(`.c` 文件)和头文件(`.h` 文件)。 - 源文件包含了程序的主要逻辑和实现细节,而头文件则用于声明函数原型和数据结构等。 #### 五、第一个C语言程序 - 下面是一个简单的C语言程序示例,用于展示如何使用`printf`函数输出文本: ```c #include <stdio.h> int main() { printf("Hello, World!\n"); return 0; } ``` - `#include <stdio.h>`:引入标准输入输出库。 - `int main()`:定义主函数,程序的入口点。 - `printf`:输出函数,用于向屏幕打印文本。 - `return 0;`:表示程序正常结束。 #### 六、扩展知识点 1. **main函数**: - 每个C语言程序都必须有一个`main`函数,它是程序的入口点。 - `main`函数可以接受参数,通常形式为`int main(int argc, char *argv[])`。 2. **printf和库函数**: - `printf`是一个标准库函数,用于格式化输出文本到标准输出设备。 - C语言标准库提供了大量的预定义函数,可以帮助开发者完成各种任务。 3. **关键字介绍**: - C语言中有32个关键字,如`if`、`else`、`for`、`while`等,这些关键字具有特殊的意义,不能用作标识符。 4. **字符与ASCII编码**: - ASCII(American Standard Code for Information Interchange)是一种字符编码标准,用于表示英文字符。 - 在C语言中,每个字符都可以用其对应的ASCII码值表示。 5. **字符串和\0**: - 在C语言中,字符串是一系列字符的序列,以空字符`\0`作为结束标志。 - `\0`是一个特殊的字符,用来表示字符串的结尾。 6. **转义字符**: - 转义字符是C语言中的一种特殊字符,用于表示不可见或特殊含义的字符。 - 常见的转义字符包括`\n`(换行)、`\t`(水平制表符)、`\"`(双引号)等。 7. **语句和语句分类**: - C语言中的语句是用来表达某种计算或操作的最小单元。 - 语句可以分为简单语句和复合语句两大类,其中简单语句包括表达式语句、空语句等;复合语句则是由一系列简单语句组成的。 8. **注释的作用**: - 注释是程序员用来解释代码的手段,它们不会被编译器执行。 - 写注释有助于提高代码的可读性和维护性,方便其他开发者理解代码的逻辑和目的。 - C语言中有两种注释方式:单行注释(使用`//`)和多行注释(使用`/* */`)。



























