gpt4 book ai didi

c - 标准库 include 应该写在哪里? .c 还是 .h 文件?

转载 作者:行者123 更新时间:2023-12-04 14:18:18 25 4
gpt4 key购买 nike

我有以下简单的代码:

mainc.c:

    #include <stdlib.h>
#include "hello.h"


int main (int argc, char *argv[])
{
hello ();
return EXIT_SUCCESS;
}

你好ç:
    #include "hello.h"

void hello (void)
{
printf ("Hello world!");
}

你好.h:
    #ifndef _HELLO_H_
#define _HELLO_H_
#endif

我需要在 hello 中包含 stdio.h 才能访问 printf() 函数。

我应该在哪里包含它?在 hello.c 或 hello.h 中?是否有最佳实践,因为这两种解决方案似乎都是正确的?

最佳答案

应用程序中的头文件应该只包含系统头文件,这些头文件需要在头文件中声明更多接口(interface)。

例如——如果您的 header 包含采用 FILE * 的函数作为参数,应该#include <stdio.h> .如果它声明了一个包含 uint32_t 的结构体,应该#include <stdint.h> .等等。

仅在实现中使用的系统头文件应留给 .c文件。您的标题不应该 #include <stdio.h>仅仅因为实现调用 printf() , 例如。

关于c - 标准库 include 应该写在哪里? .c 还是 .h 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57933420/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com