私のプログラムにはconstants.h
、グローバルスコープで次のマトリックスを宣言するというファイルがあります(マトリックスは完全に一定である必要があります。潜在的な問題が発生した場合は、お知らせください)。
static unsigned char const MY_MATRIX[66][9] = {...};
別のファイルで、それを呼び出しましょうmain.c
。実際にこの定数を参照できます。
doSomething(var1, count, MY_MATRIX[42], TRUE, FALSE, thing);
static
しかし、キーワードの定義を読んだだけで、定義されているファイルの外部から変数にアクセスできないことを意味しているはずです(この場合、望ましい動作はアクセスする必要があるということですが、キーワードは次のように見えます使用するもの!)extern
それで、なぜこれが機能するのか誰かに教えてもらえますか?変数が見えないのはなぜですか?ありがとう!