C语言中的一些小问题。

##C语言中的一些小问题

#头文件的名字用双引号括起来,而不是尖括号,它们的区别是什么?

#include <stdio.h>
#include "totaller.h"

当编译器看到尖括号,就会到标准库代码所在目录查找头文件。如果用引号把文件名括起来,编译器就会在本地查找文件。

但严格来说,这是由编译器的工作方式决定的。通常情况下,引号表示以相对路径查找头文件,如果不加目录名,只包含一个文件名,编译器就会在当前目录下查找头文件;如果用了尖括号,编译器就会以绝对路径查找头文件。

gcc知道标准库的绝对路径。如果你在Windows中安装了MinGW编译器,那标准库头文件stdio.h通常就在安装目录下C:\MinGW\include\stdio.h中。

#什么是预处理?

预处理是在正式编译开始之前修改代码,创建新的源文件。例如预处理会读取头文件中的内容,插入主文件。但预处理并不会真的创建一个文件。为了提高编译的效率,编译器通常会用管道在两个阶段之间发送数据。

#为什么C语言中是使用复制的方式把值给形参?

因为计算机是通过赋值的方式向函数传递值的。所有赋值都会复制值。