Ich habe ein Schülerprojekt für die Schule, ich programmiere hauptsächlich in PHP, also ist C++ nicht meine starke Seite :) Bitte lassen Sie mich wissen, ist es möglich, die Variable zu ändern, die ich in cin string erwähne? Vielleicht wird mein Code unten verständlicher sein:Wie ändert man die in der Eingabezeichenfolge angegebene Variable?
#include <iostream>
#include <string>
#include <sstream>
using namespace std;
string A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, R, Q, S, T, U, V, W, X, Y, Z;
string instrukcja;
string krok[3];
int i = 0;
string MAKENULL()
{
return " ";
}
void WRITE(string x)
{
cout << x;
}
int main()
{
// get instruction Begin
char s[10];
scanf("%10[0-9a-zA-Z ]", s);
istringstream iss(s);
while(iss)
{
string sub;
iss >> sub;
krok[i] = sub;
i++;
}
// get instruction End
if (krok[0] == "MAKENULL")
{
"" Variable in krok[1] "" = MAKENULL();
}
if (krok[0] == "WRITE")
{
WRITE("" Variable in krok[1] "");
}
if (krok[0] == "OPPOSITE")
{
OPPOSITE("" Variable in krok[1] "", "" Variable in krok[2] "")
}
}
In obigen Code ich etwas tun wird, wie ein B ADD, und A sollte sich A => A + B (ein String-Stick zum anderen). Hauptfrage ist, kann ich eine Variable auf scanf ändern?
Es ist nicht wirklich klar, was Sie tun möchten. Sie möchten zwei Strings verketten? und was ist "GEGENSTAND()"? – user463035818
Vielleicht werde ich versuchen, das ganze Projekt zu erklären. Es wird Register (AZ) geben, und dieses Programm bekommt nur eine Eingabe (in Schleife) mit Anweisungen (wie ADD A, Z; GEGENTEIL A, W; WRITE A usw.) und das brauche ich jetzt, kann ich zeigen in scanf/cin eine bestimmte Variable zu ändern? –
Wenn ich Sie richtig verstehe, müssen Sie eine Zuordnung von den Zeichenfolgendarstellungen ("A", "B" ...) zu den Variablen bereitstellen, die die Werte enthalten (dh die Zeichenfolgen A, B, ...). . Sie können eine 'std :: map' verwenden, wobei der Schlüssel die 'string' ist, die Sie von' scanf' erhalten, und der Wert (dh die zweite string in der Map) ist Wert, den Sie ändern möchten –
user463035818