编写全新的程序时,在头文件中使用新式函数声明(函数原型),在其他 C 源文件中使用新式函数声明和定义。但是,如果有人将代码移植到某个系统而该系统使用的编译器是 ISO C 之前的版本,请在头文件和源文件中使用宏 __STDC__(仅为 ISO C 编译系统定义)。有关示例,请参阅混合使用的注意事项。
只要同一对象或函数的两个不兼容声明处于同一作用域中,符合 ISO C 的编译器就必须发出诊断。如果使用原型来声明和定义所有函数,并且相应的头文件包含在正确的源文件中,则所有调用应与函数的定义一致。此协议消除一种最常见的 C 编程错误。