2012-02-06 9 views
4

私は実際にストレートC(C++ではなくcでも)をコーディングしたので、externキーワードを使用して別々の.cファイル間で変数を共有する方法を知っていますが、覚えていないことはファイル間で一定のデータを共有しますか?例えばファイル間で文字列の定数配列をどのように共有しますか?

、(ノートは、これは私が欲しいものを表示するようにない Cコード(またはそれは、その事故の場合)ではなく、擬似コードです)...私はこれを持っていると言う:

const char const * WEEKDAYS[] = { 
    "Sunday", 
    "Monday", 
    "Tuesday" 
} 

今私は、データを指すcharポインタの配列を作成しようとしています。繰り返しますが、これは定数データなので、ヘッダーに直接定義したいのですが、それはどうやって行うのかわかりません。それをcファイルに宣言して、別の場所にあるヘッダにexternを使用します。

これまでより新しい、より現代的な言語のおかげで、私はこの問題に対処しなければならなかったので、長い時間を過ごしました。

+0

'extern const char * const WEEKDAYS [];'は私のために働きます。配列のサイズは指定していないことに注意してください。誰かが私たちを訂正するかどうかを見てみましょう。 – Mahesh

答えて

5

これは、変数の場合と同じです:

// header 
extern const char * const WEEKDAYS[3]; 

// implementation 
const char * const WEEKDAYS[3] = { 
    "Sunday", 
    "Monday", 
    "Tuesday" 
}; 

はまた、あなたはおそらく、無効な構文であるconst char * const、ないconst char const *をしたいです。

関連する問題