C语言的特点:高效、灵活、功能丰富、表达力强和较高的可移植性
#include <stdio.h> 和#include "stdio.h"的区别
查找路径不一样。
#include 预处理指令用于把这个文件包含到需要使用这些声明的源文件中。
#include <stdio.h>直接到设置的include 环境变量里查找。
#include "stdio.h"现在当前路径查找,再到设置的include环境变量里查找。
注释
/* */C语言风格的注释,可注释多行,但是不支持嵌套注释,/* 与 */之间的内容都注释掉。
//C++风格的注释,一次注释一行。
需要注意的是,在注释中,换行符依旧有效。也就是说在使用换行符(\)将一行折行为多行的时,折行得到的多行都会被注释掉
注释只会让注释掉的内容在程序中不起作用,而不会将这段代码从源文件中删除,要从逻辑上删除一段C代码,可以通过条件编译的方式实现。
字符串
在C语言中,使用一对双引号(“”)括起来的一串甚至一个字符被看做是一个字符串,‘\0’(NUL)是C语言中字符串结束的标志,它本身不被看做是字符串的一部分。
对于"abcde"这样一个字符串,在内存中的存储为:'a','b','c','d','e','\0' 。虽然存放了'\0',但是在计算字符串的长度时,并不会吧‘\0’计入长度大小中。
说明:'\0'、0、NULL的本质都是数字0,'0'是字符0,ASCII码值为48.
三字母词
就是几个字符的序列,合起来表示另外一个字符。常见的三字母词:
三字母词 | 表示字符 |
??( | [ |
??) | ] |
??< | { |
??> | } |
事实上,现在的编译器已经做了优化。三字母词可以是C环境可以在某些缺少一些必备字符的字符集上使用,而现在我们的使用的编译器环境都是具备这些字符集的,所以,就算我们使用三字母词,也会原样输出。
在Windows VS2013下测的话,单字母词直接就被忽略了,在Linux下,会有一个警告,三字母词依然会被忽略。