V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
opiviqo
V2EX  ›  C

请教 C 语言头文件引用的问题

  •  
  •   opiviqo · Aug 6, 2018 · 3276 views
    This topic created in 2831 days ago, the information mentioned may be changed or developed.

    软件有三层如图

    | up.h | 顶层

    | mid_0.h | mid_1.h | 中间层

    | down.h | 底层

    1,down.h 中定义了基本个一个结构体; 2,mid_0.h 和 mid_1.h 都引用 down.h,并且都在 down.h 定义结构体的基础上增加了内容,打包成新的结构体。 3,up.h 引用 mid_0.h 和 mid_1.h,(使用中间层定义的结构体编写函数等)

    那么问题来了:) 1,这样会导致 down.h 重定义,请教各位有什么好的方法梳理上面的结构,解决重定义问题; 2,有没有头文件引用.c 文件上定义的结构体的方法呢?

    感谢各位大佬

    6 replies    2018-08-06 17:27:37 +08:00
    ysc3839
        1
    ysc3839  
       Aug 6, 2018 via Android   ❤️ 1
    AlvisIsMe
        2
    AlvisIsMe  
       Aug 6, 2018   ❤️ 1
    头文件重定义是没有加头文件卫士吗?
    Chenamy2017
        5
    Chenamy2017  
       Aug 6, 2018   ❤️ 1
    1.没有增加头文件卫士
    2.在 down.h | 底层 是不是定义了变量之类的东西
    Abercrombie
        6
    Abercrombie  
       Aug 6, 2018   ❤️ 1
    1. ifdef
    2. forward-declaration
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3331 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 39ms · UTC 13:01 · PVG 21:01 · LAX 06:01 · JFK 09:01
    ♥ Do have faith in what you're doing.