ビデオ: UiPath Project Organization 5.3 2024
Cのマルチモジュールプロジェクトが複雑になるにつれ、各ソースコードファイルの最初の部分が長くなり、長くなります。プロトタイプの増加、定数の増加、グローバル変数と構造の増加各モジュールに必要です。コードに冗長性を持たせるのではなく、プロジェクトのヘッダーファイルを作成することができます。
ヘッダファイルには、ソースコードファイルに入れることのできるすべてが含まれています。具体的には、ヘッダーファイルに項目を入れる必要があります。ヘッダーファイルは、すべてのソースコードモジュールに格納されます。サンプルのヘッダーファイルは次のとおりです。
<! - 1 - >ヘッダファイル EX2403。 H 999 #include / *プロトタイプ* / void fillstructure(void); void printstructure(void); / *定数* / / *変数* / struct thing {char name [32]; int age;}; typedef構造体の人間;
ヘッダファイルex2403に示されているヘッダファイル。 hはincludeディレクティブから始まります。これらのヘッダーファイルがプログラムの各モジュールで必要な場合は、独自のヘッダーファイルで指定することができます。一部のプログラマはこれを選択します。他の人はそうしない。
<! - 2 - >
2つのプロトタイプが6行目と7行目で指定されています。ヘッダーファイルがある理由の1つは、プロトタイプ化、特に複数のモジュール間でのプロトタイプ作成です。ヘッダファイルex2403。これらの項目をヘッダファイルに配置することはかなり一般的ですが、hは定数を欠いています。 9行目には、プログラムが後で定数に成長する場合のコメントがあります。
最後に、構造体は13行目で定義されています。そして、18行目はtypedefを使用して、struct thingの代わりに
human という単語をコード内で使用できるようにします。 <! - 3 - >
ヘッダーファイルに含めるその他の一般的な項目はマクロです。これらは、コードを単純化するのに役立つプリプロセッサディレクティブです。コードでローカルヘッダファイルを使用するには、他のヘッダファイルと同様に、そのファイルを1行に指定します。大きな違いは、角括弧の代わりに二重引用符が使用されていることです。例:
#include "ex2403。h"
コンパイラは、現在のディレクトリの二重引用符で囲まれたヘッダファイル名をソースコードファイルとともに探します。ファイルがそのディレクトリにない場合は、
#include "headers / ex2403。h"
Project ex2403
mainのようにパス名を指定する必要があります。 c ソースコードは、ヘッダーファイルex2403のヘッダーファイルを示しています。 hが使用されます。 PROJECT EX2403
MAIN。 C ソースコード #include "ex2403。h"人間の人。 int main(){fillstructure(); printstructure(); return 0;} void fillstructure(void){printf( "あなたの名前を入力してください:"); fgets(人名、31、stdin); printf( "あなたの年齢を入力:"); scanf( "%d"、&person。年齢);} void printstructure(void){printf( "あなたは%sn"という名前です); }
プロジェクトex2403
mainに示されているソースコードの1行目。 c ソースコードには、カスタムヘッダーファイルex2403が含まれています。 h。 typedefの人間は3行目で使用されます。それはそれです!カスタムヘッダーで処理されているため、ソースコードに他の宣言は必要ありません。 演習
1 : コード::ブロックで新規プロジェクトを作成します。新しいヘッダーファイルex2403を作成します。 h、プロジェクトのヘッダーファイルex2403からコードをコピーします。 hをそのファイルに追加します。 Project ex2403 mainのソースコードをコピーします。 c ソースコードをメインに追加します。 cファイル。ビルドして実行します。 演習
2 999: プロジェクトex2403 mainからfillstructure()とprintstructure()関数を分割します。 c 各ソースコードファイルに入力されるようにソースコードを入力します。 cと出力します。 cである。マルチモジュールプログラムをビルドします。