Heim > Artikel > Backend-Entwicklung > Warum erhalte ich in meinem C-Code den Fehler „Nicht standardmäßige Syntax“?
Beim Schreiben von Code in C stoßen Programmierer häufig auf Fehler wie „Nicht-Standard-Syntax“. Dieser Fehler tritt auf, wenn eine Operation mit einer Syntax ausgeführt wird, die von der C-Sprache nicht offiziell anerkannt wird.
In Ihrem speziellen Fall stammt der Fehler aus dem folgenden Code :
<code class="cpp">void TicTacToe::player1Move(string coordX) // ERROR { cout << "Enter X: " << endl; cin >> coordX; _coordX = coordX; }</code>
Hier ist die Funktion „player1Move“ eine Mitgliedsfunktion der TicTacToe-Klasse. Der Funktionsname wird jedoch als einzelner Ausdruck verwendet, ohne dass die Funktionsaufrufsyntax aufgerufen wird. Gemäß C-Konventionen ist dies für Mitgliedsfunktionen falsch.
Um einen Zeiger auf eine Mitgliedsfunktion korrekt zu erhalten, müssen Sie den Address-of-Operator verwenden Operator (&). Dieser Operator erstellt einen Verweis auf den Speicherort der Funktion, sodass wir indirekt auf die Funktion zugreifen können.
Die Korrektur Ihres Codes lautet:
<code class="cpp">void TicTacToe::player1Move(string coordX) { cout << "Enter X: " << endl; cin >> coordX; _coordX = coordX; }</code>
Mit dieser Änderung kann die Funktion „player1Move“ ausgeführt werden von anderen Teilen des Programms mithilfe der korrekt aufgerufen werden. Operator, etwa so:
<code class="cpp">TicTacToe Board; Board.player1Move("1");</code>
Das obige ist der detaillierte Inhalt vonWarum erhalte ich in meinem C-Code den Fehler „Nicht standardmäßige Syntax“?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!