このプロジェクトにアクセスできます。これはKeilμvision5でコンパイルされています。プロジェクトをコンパイルするときにエラーはありません。しかし、私がヘッダファイルにアクセスすると、s8変数に次のエラーがあるというエラーが表示されます。エラー:不明な型名 's8'。Keilμvision5ヘッダファイルにエラーが表示されますが、問題なくコンパイルされます。
typedef struct
{
s8 str[PARAM_TEXT_SIZE];
}
text_struct;
変数は、以下のように定義されます。
typedef char s8;
私はコンパイラを誤って構成している、またはこのエラーはコンパイル後に無視されている理由だろうか。
PS:これは私の最初の質問StackOverflowサイトです。申し訳ありませんが私の質問が明確でないか間違って配置されている場合。
と?これらのファイルはどのファイルにありますか? 's8'は標準ではありません。加えて、 'char'を符号なし8にすることは非常に悪い考えです。あなたがするべきことは(1999年以来) 'stdint.h'を使うことであり、いくつかの自家製のジャンクタイプではありません。 – Lundin
@ Lundin '(1999年以降) - >今年から、クロスコンパイラのプロバイダが21世紀を実現することは事実です。 * 198Xで叫ぶ*。 (とにかくARMコンパイラは最新です) – Tim
こんにちは@Lundin、私はこのコードを持っていると言っています。通常、私はあなたが 'stdint.h'と言ったように使います。しかし、これは大きなコード(100k以上のコード行)であり、この変数はコードで広く使用されています。これはアームマイクロコントローラの 'typedef_arm.h'ファイルで定義されています。また、マイクロコントローラのバイナリ計算にとって重要なので、符号付き変数として定義されます。 –