C——在两个标头中声明的相同方法

C——在两个标头中声明的相同方法,c,include,hardware,C,Include,Hardware,我是C编程新手。当我检查一个方法的声明时,我陷入了混乱。它显示两个不同的标题。可能吗?如果“方法”是指“功能”,那么是的。只要声明不是定义,并且这些多个声明彼此一致(对于具有外部链接的函数),就可以根据需要多次声明任何内容 最后,所有头文件都会嵌入到多个翻译单元中,这意味着您最终会得到包含相同函数声明的多个翻译单元 但是在大多数情况下,在多个不同的位置重新声明相同的函数并不是您想要做的事情,因为它需要额外的维护来保持声明的一致性。头文件的全部目的是解决这个维护问题,让您只声明一次每个函数。如果“

我是C编程新手。当我检查一个方法的声明时,我陷入了混乱。它显示两个不同的标题。可能吗?

如果“方法”是指“功能”,那么是的。只要声明不是定义,并且这些多个声明彼此一致(对于具有外部链接的函数),就可以根据需要多次声明任何内容

最后,所有头文件都会嵌入到多个翻译单元中,这意味着您最终会得到包含相同函数声明的多个翻译单元

但是在大多数情况下,在多个不同的位置重新声明相同的函数并不是您想要做的事情,因为它需要额外的维护来保持声明的一致性。头文件的全部目的是解决这个维护问题,让您只声明一次每个函数。

如果“方法”是指“函数”,那么是的。只要声明不是定义,并且这些多个声明彼此一致(对于具有外部链接的函数),就可以根据需要多次声明任何内容

最后,所有头文件都会嵌入到多个翻译单元中,这意味着您最终会得到包含相同函数声明的多个翻译单元

但是在大多数情况下,在多个不同的位置重新声明相同的函数并不是您想要做的事情,因为它需要额外的维护来保持声明的一致性。头文件的全部目的是解决这个维护问题,让您只声明一次每个函数。

如果“方法”是指“函数”,那么是的。只要声明不是定义,并且这些多个声明彼此一致(对于具有外部链接的函数),就可以根据需要多次声明任何内容

最后,所有头文件都会嵌入到多个翻译单元中,这意味着您最终会得到包含相同函数声明的多个翻译单元

但是在大多数情况下,在多个不同的位置重新声明相同的函数并不是您想要做的事情,因为它需要额外的维护来保持声明的一致性。头文件的全部目的是解决这个维护问题,让您只声明一次每个函数。

如果“方法”是指“函数”,那么是的。只要声明不是定义,并且这些多个声明彼此一致(对于具有外部链接的函数),就可以根据需要多次声明任何内容

最后,所有头文件都会嵌入到多个翻译单元中,这意味着您最终会得到包含相同函数声明的多个翻译单元



但是在大多数情况下,在多个不同的位置重新声明相同的函数并不是您想要做的事情,因为它需要额外的维护来保持声明的一致性。头文件的全部用途是解决这个维护问题,让您只声明一次每个函数。

该方法将引用哪个声明?它将如何找到正确的一个?@ilaunchpad:你说的“正确的一个”是什么意思?所有声明必须相同。所以它选择哪一个并不重要。而且,重要的是,只有一个定义是允许的。@ ILAUNCHPAD:如果声明不同,那么它不是相同的方法(如果在C++中使用不同数量或类型的输入,而不是C),那么可以有两个相同名称的方法。如果它们是一样的,那么它选择哪一个并不重要,不是吗?@R_Kapp:这是一个C问题。C中没有“方法”。不,在C中不能有两个名称相同但“输入不同”的函数。@R_Kapp:使用错误的术语实际上是“清晰”的对立面,但迟早会导致OP混淆。该方法将引用哪个声明?它将如何找到正确的一个?@ilaunchpad:你说的“正确的一个”是什么意思?所有声明必须相同。所以它选择哪一个并不重要。而且,重要的是,只有一个定义是允许的。@ ILAUNCHPAD:如果声明不同,那么它不是相同的方法(如果在C++中使用不同数量或类型的输入,而不是C),那么可以有两个相同名称的方法。如果它们是一样的,那么它选择哪一个并不重要,不是吗?@R_Kapp:这是一个C问题。C中没有“方法”。不,在C中不能有两个名称相同但“输入不同”的函数。@R_Kapp:使用错误的术语实际上是“清晰”的对立面,但迟早会导致OP混淆。该方法将引用哪个声明?它将如何找到正确的一个?@ilaunchpad:你说的“正确的一个”是什么意思?所有声明必须相同。所以它选择哪一个并不重要。而且,重要的是,只有一个定义是允许的。@ ILAUNCHPAD:如果声明不同,那么它不是相同的方法(如果在C++中使用不同数量或类型的输入,而不是C),那么可以有两个相同名称的方法。如果它们是一样的,那么它选择哪一个并不重要,不是吗?@R_Kapp:这是一个C问题。C中没有“方法”。不,在C中不能有两个名称相同但“输入不同”的函数。@R_Kapp:使用错误的术语实际上是“清晰”的对立面,但迟早会导致OP混淆。该方法将引用哪个声明?它将如何找到正确的一个?@ilaunchpad:你说的“正确的一个”是什么意思?所有声明必须相同。所以它选择哪一个并不重要。而且,重要的是,只允许一个定义。@ilaunchpad:如果声明不同,那么它就不是同一个方法(您可以