在新的c程序中使用我的链表代码
提前道歉,因为这似乎非常基本 我有我的链接列表文件linkedList.c,我想把它包括在我的新的c文件中,这样我就不必再次编写整个链接列表。在Java中,我只需要将它放在同一个文件夹中,然后我就可以在新文件中创建一个linkedList类的对象,但是C似乎不是这样工作的。如果我尝试使用在新的c程序中使用我的链表代码,c,C,提前道歉,因为这似乎非常基本 我有我的链接列表文件linkedList.c,我想把它包括在我的新的c文件中,这样我就不必再次编写整个链接列表。在Java中,我只需要将它放在同一个文件夹中,然后我就可以在新文件中创建一个linkedList类的对象,但是C似乎不是这样工作的。如果我尝试使用 #include "linkedLIst.c" 在我的新文件开始时,我收到了错误,因为main现在已经与布尔变量一起定义了两次。我该如何解决这个问题呢?您可以#包括任何类型的(语法上有效的)C代码,但通常不
#include "linkedLIst.c"
在我的新文件开始时,我收到了错误,因为main现在已经与布尔变量一起定义了两次。我该如何解决这个问题呢?您可以#包括任何类型的(语法上有效的)C代码,但通常不应该(按照惯例)包括.C
文件。请阅读更多有关该网站的信息
在实践中,你应该考虑做一些(用于重用),并将你的共享代码分成一个<代码> .h < /Cult>头文件(包含定义),你将在代码< >中包含“< /代码>重新使用”和一个实现<代码> .c>代码>文件。当然,不要在共享源代码中定义任何
main
。在一些简单的情况下,在某些操作系统上,您还可能共享一个(或少数几个)(以及相关的头文件)
共享头将声明函数和extern
变量(以及#定义一些宏)。它还可以包含短静态内联
函数的定义(及其主体)
您的共享实现将定义这些(和其他)函数和变量
C编程需要很多约定(您需要定义自己的约定)查看现有示例(一些源代码来自或来自Linux发行版)。对于可重用容器库,请查看(来自GTK)和(使用许多预处理器技巧)以及许多其他内容
因为C没有任何概念,所以明智的做法是(出于可读性和其他原因)有一个一致的命名约定,例如,以某个公共前缀开始库中的所有公共名称(函数、变量和宏的标题)。您可以#包括任何类型的(语法有效的)C代码,但通常不应该(按照惯例)包含.c
文件。请阅读更多有关该网站的信息
在实践中,你应该考虑做一些(用于重用),并将你的共享代码分成一个<代码> .h < /Cult>头文件(包含定义),你将在代码< >中包含“< /代码>重新使用”和一个实现<代码> .c>代码>文件。当然,不要在共享源代码中定义任何
main
。在一些简单的情况下,在某些操作系统上,您还可能共享一个(或少数几个)(以及相关的头文件)
共享头将声明函数和extern
变量(以及#定义一些宏)。它还可以包含短静态内联
函数的定义(及其主体)
您的共享实现将定义这些(和其他)函数和变量
C编程需要很多约定(您需要定义自己的约定)查看现有示例(一些源代码来自或来自Linux发行版)。对于可重用容器库,请查看(来自GTK)和(使用许多预处理器技巧)以及许多其他内容
因为C没有任何概念,所以明智的做法是(出于可读性和其他原因)有一个一致的命名约定,例如,通过一些公共前缀启动库的所有公共名称(函数、变量和宏的标题)。您需要定义一个头文件,linkedList.h
,并在其中声明您的链表函数原型,您可能已经在linkedList.c
文件中定义了它。然后,您可以使用'#include linkedList.h'
重用代码。您需要定义一个头文件linkedList.h
,并在其中声明您的链表函数原型,您可能已经在linkedList.c
文件中定义了该原型。然后,您可以使用“#include linkedList.h”
重用代码。这是标准的C编译。你可以在任何一本C语言书中或通过搜索找到。Stackoverflow不适合询问教程式的问题。首先,可重用模块不应包含main。其次,C要求您只包含一个接口,然后在头(linkedList.h
)中声明函数。您可以在源文件(linkedList.c
)中定义链表函数,而不使用main()
。您将旧的主程序放入另一个源文件(main1.c
),其中包括linkedList.h
。您将新的主程序放在另一个源文件(main2.c
)中,该源文件还包括linkedList.h
。将linkedList.c
编译为对象文件linkedList.o
。将该对象文件与main1.c
链接,以构建旧程序;您将该对象文件与main2.c
链接以构建新程序。这是标准的c编译。你可以在任何一本C语言书中或通过搜索找到。Stackoverflow不适合询问教程式的问题。首先,可重用模块不应包含main。其次,C要求您只包含一个接口,然后在头(linkedList.h
)中声明函数。您可以在源文件(linkedList.c
)中定义链表函数,而不使用main()
。您将旧的主程序放入另一个源文件(main1.c
),其中包括linkedList.h
。您将新的主程序放在另一个源文件(main2.c
)中,该源文件还包括linkedList.h
。您可以编译linkedLi