2016-11-05 7 views
-2

Ich habe eine Funktion namens decryptionArchive() wie folgt definiert:Kennung nicht gefunden, wenn sie keine Kennung sein soll?

string decryptionArchive(char i) { 

} 

Können Sie eine Funktion mit einem String-ID erstellen? Ich habe überall gesucht und alles, was ich gefunden habe, ist das Erstellen von Zeigern zu String-Datentypen. Wenn ich diesen Code ausführen:

string charToAdd = decryptionArchive(i[curr]); 

Ja, ich habe Zeichenfolge importiert, und ich verwende Namespace Std. 'i' ist eine Zeichenfolge, ist das das Problem? Der aktuelle Fehlercode ist

error C3861: 'decryptionArchive': identifier not found 

Dieser Fehler auf der Leitung auftritt 26, die die Linie des string charToAdd = decryptionArchive(i[curr]); ist, die keinen Sinn für mich macht. Irgendwelche Ideen? Danke

EDIT: Gerade lief das auf meinem Laptop, es funktioniert gut! Was geht hier vor sich?

+0

Sind alle Codes in der gleichen Datei? –

+0

'decryptionArchive()' ist wahrscheinlich in einer anderen Kompilierungseinheit (auch Quelldatei genannt) definiert als die Zeile, die es aufruft. Eine Deklaration muss vom Compiler in dieser anderen Kompilierungseinheit vor dem Aufrufpunkt gesehen werden. – Peter

+0

Alles hier ist in der gleichen Quelldatei. – owenbradstreet

Antwort

-1

Sie haben i nicht als Array deklariert. Du behandelst i als ein Array, aber ich bin kein Array.

+0

Das macht Sinn, aber ich dachte, das ist der Weg, wie Sie einen bestimmten Buchstaben von einer Zeichenkette in C++ bekommen haben? Wenn ich eine Zeichenkette definiert habe und dann * stringname * [0] dachte, dachte ich, dass ich den ersten Buchstaben dieser Zeichenkette bekommen würde. Wenn dies nicht der Fall ist, wie würde ich einen bestimmten Buchstaben einer Zeichenfolge erhalten? – owenbradstreet

+0

Wie wäre es, wenn Sie Speicher wie folgt zugewiesen haben? –

+0

decryptiontoAchieve (char i [80]) –