2010-12-03 4 views
8

私はQuake 1 GPLコードを見ていましたが、私は理解できないような目的や用途に似たさまざまなヘッダファイルに出くわしました。彼らはいくつかの種類のテーブルのように見え、このような構造になっています記法Quakeのソースコード(C)

{1, 0}, 
{1, -1}, 
{1, -2}, 
{1, -3}, 
{1, -4}, 
{1, -5},[...] 

その前後には何も表示されません。私は彼らが何かを定義することを理解していますが、私はCでこのような表記をしたことはありません。 私はhereを参照しているヘッダーファイルの1つを読むことができます。

私の質問は:それらのものは何ですか? ASMは、実際には私にそれよりも問題の少ないものを与えています。

答えて

14

これはおそらく複数使用のインクルードです。彼らはとてもように使用することができます。

struct {int y; int y;} points[] = { 
#include <points.inl> 
}; 
+1

は、どのように私はそれを考えることができませんでした!実際には、d_polyse.cファイルを簡単に見て確認しました。答えてくれてありがとう! – Viktor

+0

ようこそ。 – frast

8

ヘッダの内容がないが有効Cである必要はありません。 Cプリプロセッサは、#includeディレクティブが見つかった場合はいつでも、他のソースファイル内の構造体の初期化の途中でそれらを挿入します。実際にコンパイラに到達するまでに有効なCであれば、それだけでも問題ありません。

3

これらは、配列の初期化に使用できます。

あなたは、このようにそれらを使用することができます。

int array[N][2] = 
#include <header_file> 
; 
関連する問題