C の構文エラーを解決する方法: ';' トークンの前に主式が必要です'
C コードを学習して作成するとき、さまざまな構文の間違いに遭遇することがよくあります。よくあるエラーの 1 つは、「';' トークンの前に主式が必要です」です。このエラーは、ステートメントの終了にセミコロンが使用されているが、ステートメントの構造が正しくない場合によく発生します。この記事では、このエラーの原因と解決策を詳しく説明します。
このエラーには通常、変数が正しく定義されていない、または間違った構文構造が使用されているという 2 つの理由が考えられます。以下では、これら 2 つの状況をそれぞれ説明し、対応する解決策を提供します。
状況 1: 正しく定義されていない変数
C コードで正しく定義されていない変数を参照すると、コンパイラは「';' トークンの前に主式が必要です」というエラーを報告します。これは通常、次の状況で発生します。
x = 5;
上記のコードでは、変数 x の型が定義されていないため、コンパイラはエラーを報告します。
解決策: 変数の型を正しく宣言します。例:
int x = 5;
解決策: コード内の変数名のスペルが正しいかどうかを確認し、エラーを修正します。
int num = 10; cout << nums << endl; // 正确的变量名是num,不是nums
void func() { int x = 5; } int main() { cout << x << endl; // x在函数func的作用域内,无法在main函数中引用 return 0; }
解決策: 変数宣言を適切なスコープに配置します。
ケース 2: 間違った文法構造を使用する
C コードで間違った文法構造を使用すると、コンパイラは「expected Primary-expression before ';' token 」というエラーを報告します。これは通常、次の状況で発生します。
解決策: コード内の式が正しいかどうかを確認し、エラーを修正します。
解決策: コード内のメンバー アクセス操作が正しいかどうかを確認し、エラーを修正します。
これは、C 構文エラー「';' トークンの前に主式が必要です」を解決する方法を示す簡単なコード例です:
#include <iostream> using namespace std; int main() { int num = 10; cout << num << endl; return 0; }
上記のコードでは、変数を宣言しました。正しくは num の型であり、変数を使用する前に初期化されます。したがって、コンパイラはエラーを発行しません。
概要:
C コードを作成するとき、さまざまな構文エラーに遭遇することがよくあります。 「';' トークンの前にプライマリ式が必要です」エラーが発生した場合は、コードを注意深くチェックしてエラーの原因を見つけて解決する必要があります。この記事では、読者がこのエラーを解決できるように、2 つの一般的なエラー条件と対応する解決策を説明します。同時に、コーディング時に適切なコーディング スタイルと仕様を維持することをお勧めします。これにより、文法エラーの発生を効果的に減らすことができます。
以上がC++ 構文エラーを解決する方法: 「';' トークンの前に主式が必要です」の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。