1.C语言发展历史
1.1C语言是什么
首先我们思考一个问题:人和计算机是怎样交流的呢?答案是:计算机语言。
⽬前已知已经有上千种计算机语⾔,⼈们是通过计算机语⾔写的程序,给计算机下达指令,让计算机⼯作的。C语⾔就是众多计算机语⾔中的⼀种,当然C++/Java/Go/Python都是计算机语⾔。
1.2计算机的历史
以下图片概括:
2.编译和链接
C语⾔是⼀⻔编译型计算机语⾔,C语⾔源代码都是⽂本⽂件,⽂本⽂件本⾝⽆法执⾏,必须通过编译器翻译和链接器的链接,⽣成⼆进制的可执⾏⽂件,可执⾏⽂件才能执⾏。
C语⾔代码是放在 .c 为后缀的⽂件中的,要得到最终运⾏的可执⾏程序,中间要经过编译和链接2个过程。
3.main函数,printf打印函数及库函数
3.1main函数和printf打印函数
1.main是每个C语言的入口, main
前⾯的 int
表⽰ main
函数执⾏结束的时候返回⼀个整型类型的值。所以在 main
函数的最后写 return 0;
正好前后呼应。
2.printf
是⼀个库函数
,它的功能是在标准输出设备(⼀般指屏幕)上进⾏信息的打印。
3.2库函数
为了不再重复实现常⻅的代码,让程序员提升开发效率,C语⾔标准规定了⼀组函数,这些函数再由不同的编译器⼚商根据标准进⾏实现,提供给程序员使⽤。这些函数组成了⼀个函数库,被称为标准库,这些函数也被称为库函数。在这个基础上⼀些编译器⼚商可能会额外扩展提供部分函(这些函数其他编译器不⼀定⽀持)。
⼀个系列的库函数⼀般会声明在同⼀个头⽂件中,所以库函数的使⽤,要包含对应的头⽂件。
4.关键字
5. 字符,字符串和ASCII编码
5.1字符
在键盘上可以敲出各种字符,如:a,q,@,#等,这些符号都被称为字符,C语⾔中字符是⽤单引号括起来的,如:‘a’,‘b’,‘@’。
5.2.字符串
使⽤双引号括起来的⼀串字符就被称为字符串,如:“abcdef”,就是⼀个字符串。字符串的打印格式可以使⽤ %s 来指定。
C语⾔字符串中⼀个特殊的知识,就是在字符串的末尾隐藏放着⼀个 \0 字符,这个 \0 字符是字符串的结束标志。
5.3.ASCII编码
• 字符 A~Z 的ASCII码值从65~90
• 字符 a~z 的ASCII码值从97~122
• 对应的⼤⼩写字符(a和A)的ASCII码值的差值是32
• 数字字符 0~9 的ASCII码值从48~57
• 换⾏ \n
的ASCII值是:10
• 在这些字符中ASCII码值从0~31 这32个字符是不可打印字符,⽆法打印在屏幕上观察。
6. 转义字符
• \?
:在书写连续多个问号时使⽤,防⽌他们被解析成三字⺟词,在新的编译器上没法验证了。
• \'
:⽤于表⽰字符常量 ’
• \"
:⽤于表⽰⼀个字符串内部的双引号
• \\
:⽤于表⽰⼀个反斜杠,防⽌它被解释为⼀个转义序列符。
• \a
:警报,这会使得终端发出警报声或出现闪烁,或者两者同时发⽣。
• \b
:退格键,光标回退⼀个字符,但不删除字符。
• \f
:换⻚符,光标移到下⼀⻚。在现代系统上,这已经反映不出来了,⾏为改成类似于 \v 。
• \n
:换⾏符。
• \r
:回⻋符,光标移到同⼀⾏的开头。
• \t
:制表符,光标移到下⼀个⽔平制表位,通常是下⼀个4/8的倍数。
• \v
:垂直分隔符,光标移到下⼀个垂直制表位,通常是下⼀⾏的同⼀列。
下⾯2种转义字符可以理解为:字符的8进制或者16进制表⽰形式
• \ddd
:d d d表⽰1~3个⼋进制的数字。 如: \130 表⽰字符X
• \xdd
:d d表⽰2个⼗六进制数字。 如: \x30 表⽰字符0
\0
:null 字符,代表没有内容, \0 就是 \ddd 这类转义字符的⼀种,⽤于字符串的结束标志ASCII码值是0.
暑期第一篇,请各位大佬多多指点,下篇再见!