我已经阅读了一段时间的 C 并决定让我们编写一个小添加程序,一点也不花哨。我对 C 头文件的理解是它们是“接口”(例如 java 和其他语言),但您也可以在其中定义具有设置值或不设置值的变量。
所以我写了这个:
#include <stdio.h>
#include <stdlib.h>
#include "sample.h"
int main(int argc, char** argv) {
printf("hello World\n");
add(12, 18);
return (EXIT_SUCCESS);
}
int add(int a, int b){
int value = a+b;
printf("value = %d\n", value);
return 0;
}
它有一个看起来像这样的头文件:
#ifndef SAMPLE_H_GUARD
#define SAMPLE_H_GUARD
int add(int a, int b);
#endif
我认为头文件,这是我对它们的定义迷失的地方,假设定义了 add 的使用,所以我所要做的就是调用 add - 根据我的理解,我定义了 add 的规则,然后实现添加功能......
此外,我读过的很多资料都显示了多个 C 文件的一个头文件。今天的许多项目每个 c 都有一个标头,这意味着 Sample.h 属于 Sample.c,仅此而已。
有人可以对此有所了解吗?
我可以这样做吗:
主程序
#include <stdio.h>
#include <stdlib.h>
#include "sample.h"
int main(int argc, char** argv) {
printf("hello World\n");
add(12, 18);
return (EXIT_SUCCESS);
}
添加.c
#include <stdio.h>
#include <stdlib.h>
#include "sample.h"
int add(int a, int b){
int value = a+b;
printf("value = %d\n", value);
return 0;
}
样本.h
#ifndef SAMPLE_H_GUARD
#define SAMPLE_H_GUARD
int add(int a, int b);
#endif
我相信我正在阅读的书:C Programming Language他们有一个像这样拆分的计算器示例,我的问题是 C 如何知道 add 定义在哪里?我认为它基于头文件知道它的规则,但不知道实际实现在哪里......
有一个例子,他们像这样拆分文件并没有像#include "add.c"
他们所做的那样将头文件包含在实现或使用此功能的文件中。
注意:显然,计算器示例和我的示例将有所不同,但基本相同 - 对于那些拥有这本书的人。我只是迷失了如何有效和高效地使用头文件。