嗨,大家好!我是进击的小夏。C语言入门必备知识清单我已经精心为大家准备好了,大家快快保存一起学起来吧。
一、编译和链接是什么?
C语言是一门编译型计算机语言,C语言源代码都是文本文件,文本文件本身无法执行,必须通过编译器翻译和链接器的链接,生成二进制的可执行文件,可执行文件才能执行。而C语言放在.c为后缀的文件中,要得到最终可执行的文件,必须经过编译和链接两个过程。
1.每个源文件(.c)单独经过编译器处理生成对应的目标文件(.obj为后缀的文件)
2.多个目标文件和库文件经过链接器处理生成对应的可执行程序(.exe文件)
当我们了解这些后,就可以开始着手选择适合我们使用的编译器(集成开发环境),具体选择可以参考我的上篇文章:http://t.csdnimg.cn/2iqZ2
二、main函数是什么?
main函数又称主函数,程序执行总是从main函数开始,它是一个程序的入口。如果有其他函数,则完成对其他函数的调用后再返回到主函数,最后由main函数结束整个程序。main函数前的int表示main函数执行结束时返回一个整型类型的值,因此在最后写“return 0;”呼应。
注意:main函数是程序的入口,main函数有且只有以一个。
常见错误:main写成mian,main后面的()被漏掉,代码中不能使用中文符号,所有标点需要切换英文输入法输入。
图中的printf()是一个库函数,其作用为将我们想打印的代码打印在屏幕上,下篇文章里我会重点介绍它。
三、关键字都有哪些?
C语言中的一批保留名字的符号,如int、if、return等,这些符号被称为关键字或保留字。其具有特殊意义,不能自己创建。同时,程序员创建标识符也不能和关键字重复。
C语言的32个关键字如下:
* 这些是最常用的关键字,但在C99标准中还加入了inline、restrict、_Bool、_Complex、_Imaginary等关键字,大家可以去了解,但使用最多的仍是以上32个关键字。
C语言关键字的全部介绍:https://zh.cppreference.com/w/c/keyword
四、字符和ASCII码
在键盘上可以敲出的各种符号,如a,b,@,#等,都被称作字符,C语言中用单引号把字符括起来,如'a,'b',’@','#'。
在计算机中,所有数据的储存和运算都需要用二进制表示,像a,b,c,d的52个字母(大小写)以及0,1等字还有一些常用的符号(例如*、#、@等)在计算机中存储时也要使用二进制数来表示,而具体用哪些二进制数字表示哪个符号,当然每个人都可以约定自己的一套(这就叫编码),而大家如果要想互相通信而不造成混乱,那么大家就必须使用相同的编码规则,于是美国有关的标准化组织就出台了ASCII编码,统一规定了上述常用符号用哪些二进制数来表示。
我们不需要记住所有的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个字符是不可打印字符,无法打印在屏幕上观察
六、C语言的字符串
C语言中用双引号括起来的一串字符叫做字符串,如"abcdef",即是一个字符串。
字符的打印格式用%c来指定,字符串的打印格式用%s来指定,也可直接打印:
关于字符串还有一个特别的知识点:在"abcdef"中我们只看到了6个字符,其实末尾还隐藏着“\0”(但一般不算入字符长度),\0是字符串结束的标志,因此在使用printf()打印和strlen()计算字符串长度时,遇到\0就自动停止了。
七、转义字符
转义字符是一类特殊的字符,顾名思义,就是转变了原来字符含义的字符,像上文出现过的\n和\0都属于转义字符。
举例说明:\n是换行符,为了与'n'区分开来,在前面加上\,以此表达不同的含义。
转义字符在C语言中有很多,我给大家列举了一些:
1. \?:在书写连续多个问号时使用。 2. \':用于表示字符常量'。
3. \" :用于表示⼀个字符串内部的双引号。 4. \\ :用于表示一个反斜杠,防止它被解释为一个转义序列符。
5. \a :警报,这会使得终端发出警报声或出现闪烁,或者两者同时发生。
6. \b :退格键,光标回退一个字符,但不删除字符。
7. \f :换页符,光标移到下一页。 8. \n:换行符。
9. \r :回车符,光标移到同一行的开头。
10. \t:制表符,光标移到下一个水平制表位,通常是下⼀个4/8的倍数。
11. \v :垂直分隔符,光标移到下一个垂直制表位,通常是下一行的同一列。
下面2种转义字符可以理解为:字符的8进制或者16进制表示形式。
12. \ddd :ddd表示1~3个八进制的数字。
13. \xdd :dd表示2个十六进制数字。 14. \0 :null字符,代表没有内容, 用于字符串的结束标志,其ASCII码值是0。
如果大家对转义字符的具体用法比较感兴趣,后面我会做一篇转义字符的详解,帮助大家进一步理解。当然,大家也可以自己去尝试使用这些转义字符,体会它们用法上的区别。
本期的内容就到这里,在下期我将为大家介绍数据类型和变量,以及printf函数和scanf函数,感兴趣的伙伴们可以多多关注我,一起学习进步,我们下期见!