使用尖括号的话,编译时会先在系统include目录里搜索,如果找不到才会在源代码所在目录搜索; 使用双引号则相反,会先在源代码目录里搜索。 这就意味着,当系统里(如/usr/include/里)有一个叫做math.h的头文件,而你的源代码目录里也有一个你自己写的math.h头文件,那么使用尖括号时用的就是系统里的;而使用双引号的话则会使用你自己写的那个。