私は以前よりも大きなプロジェクトに取り組んでおり、コードを適切に構造化するために最善を尽くしています。私はマイクロコントローラーをプログラミングしていて、いくつかのグローバル変数を持っています。ここで読んだいくつかのアドバイスに従って、グローバル変数が使用される場所に含まれる「global_variables.h」ファイルですべて定義されています。
また、グローバル変数のtypedefを「global_variables.h」ファイルに入れました。
私が遭遇している問題は、グローバル変数を使用するfile1.cに、新しいtypedefをパラメーターとして受け入れるfunction1(new_type_t変数)があることです。これに伴う問題は、ヘッダー(file1.h)でfunction1プロトタイプが定義されているが、#include "global_variables.h"がfile1.cにあるため、file1.hの関数プロトタイプがtypedefを認識しないことです。 。
これはよくあることのように感じますが、グーグルはあまり役に立たなかったようです。「global_variables.h」と「global_variables_types.h」を別々に作成し、他のファイルのヘッダーに.hファイルを含め、ソースに.cを含める必要がありますか?