1.C语言概述
一、什么是程序
-
指令:人对计算机下达的命令
-
计算机逐条执行指令
-
程序:为了让计算机执行某些操作或解决某个问题而编写的一系列有序指令的集合
说明:C语言两个重要版本 1.ANSI C(标准C)C89 2.C99
二、C语言的特点
-
代码级别的跨平台
-
允许直接访问物理地址,对硬件进行操作----->可以直接对硬件进行操作,可以写系统软件(比如:操作系统,数据库,杀毒软件,防火墙,驱动,服务程序)
-
C语言是一个有结构化程序设计、具有变量作用域以及递归功能的过程式语言
-
C语言传递参数可以是值传递(值),也可以是传递指针(地址)
-
C语言中没有对象,不同的变量类型可以用结构体组合在一起
-
预编译处理,生成目标代码质量高,程序执行效果高
三、C程序的开发工具
-
1)Microsoft Visual C++
-
2)Microsoft Visual Studio
-
3)DEV C++、Code::Blocks
-
4)Borland C++、Borland C++ Builder
-
5)HIgh C、Turb C、gcc 、C-Free、Win-T
四、从程序的运行机制
1.C程序运行机制(过程)简介
- 1)编辑:比如编写hello.c文件,就是源代码
- 2)编译:将hello.c程序 翻译成 目标文件(hello.obj),在计算机底层执行
- 3)链接:将目标文件 hello.obj + 库文件 生成可执行文件(MyProject01.exe),在计算机底层执行
- 4)运行:执行.exe 文件,,得到运行结果
2.什么是编译
- 1)有了C源文件,通过编译器将其编译成 obj 文件(目标文件)
- 2)如果程序没有错误,没有任何提示,但在Debug目录下会出现一个hello.obj文件,即目标文件
3.什么是链接
- 1)有了目标文件(.obj文件),通过链接程序将其和运行需要的c库文件链接,生成exe文件(可执行文件)
- 2)如果程序没有错误,没有任何提示,但在Debug目录下会出现一个项目名.exe文件,即可执行文件
- 3)为什么需要链接库文件:因为我们的C程序中会使用C程序库的内容,例如printf()函数,这不是程序员自己写的,而是C程序库中提供的,因此需要链接
- 链接后,生成的.exe文件,比obj文件大很多
4.什么是运行
- 1)有了可执行的exe文件,也称为可执行程序(二进制文件)
- 2)在控制台下直接运行exe文件
五、注意事项
对修改后的hello.c源文件需要重新编译链接,生成新的exe文件后,再执行,才能生效
- C程序的主体结构说明
#include ...
void main() { // {} 包括内容, 称为函数体
语句1;
语句2;
}
-
C程序源文件以“c”为扩展名。
-
C程序的执行入口是main()函数。
-
C语言严格区分大小写。
-
C程序由一条条语句构成,每个语句以“;”结束
-
大括号都是成对出现的,缺一不可
六、C转义字符
\t | 一个制表位,实现对齐的功能 |
---|---|
\n | 换行符 |
\\ | 一个\ |
\’ | 一个‘ |
\" | 一个” |
\r | 一个回车 |
七、常见问题和错误
-
1.fatal error LNK1104:无法打开文件“xxx.exe” --> 解决办法:修改源文件后,需要关闭控制台,才能运行
-
2.缺少分号
八、注释
1.单行注释 格式://注释文字
2.块注释 格式:/注释文字/
九、代码风格
1.注释风格
- 1)如果注释一个函数,使用块注释
- 2)如果注释函数中的某个语句,使用单行
2.缩进和空白
- 1)使用tab操作,实现缩进,默认整体向右移,,使用shift+tab整体向左移
- 2)运算符两边习惯性各加一个空格
- 3)也可以使用代码格式化快捷键ctrl+alt+L,可以自己设置
3.块的风格
- 行尾风格
- 次行尾风格
十、C语言标准库
-
<math.h>
-
<stdlib.h>
-
<assert.h>
-
<ctype.h>
-
<errno.h>
-
<float.h>
-
<limits.h>
-
<locale.h>
-
<setjmp.h>
-
<signal.h>
-
<stdarg.h>
-
<stddef,h>
-
<time.h>
练习
- 独立编写Hello world 程序
#include<stdio.h>
void main(){
printf("Hello World!\n");
getchar();
}
- 将个人的基本信息(姓名、性别、籍贯、住址)打印到控制台上输出。各条信息分别占一行(使用转义字符,在一个printf语句搞定)
#include<stdio.h>
void main(){
printf("姓名\t年龄\t成绩\t性别\t爱好\n");
printf("James\t 35\t 98\t M\t basketball\n");
getchar();
}
- 简述C程序 运行机制,说明他的几个过程,并解释.
- 编写源代码 —> .c文件
- 编译 —> .obj文件
- 链接 —> .exe文件
- 运行
XMind - Trial Version