Ich versuche ein Programm zu erstellen, das eine Polynomgleichung aus einer Datei extrahiert und addiert, subtrahiert, oder multipliziert die zwei Polynome zusammen (abhängig vom mittleren Operanden). Allerdings bekomme ich zwei Compilerfehler, die ich nicht ganz nachvollziehen kann.Fehler mit atoi ("Argument des Typs 'int *' ist nicht kompatibel mit dem Typ 'const char *'") und Hinzufügen von Arrays
Die erste tritt hier:
int** getPolynomial(string polynomial, int &count, string Exponent[], string Coefficient[], int polyArray[][1]){
for (int i = 0; i<100; i++){
for (int n = 0; n<100; n++){
Exponent[n] = atoi(polyArray[n][1]);
}
Coefficient[i] = atoi(polyArray[i][0]);
}
}
Wo ich einen Fehler bin immer "Argument vom Typ 'int *' ist nicht kompatibel mit dem Typ 'const char *'" auf den Linien Exponent[n] = atoi(polyArray[n][1]); } Coefficient[i] = atoi(polyArray[i][0]);
Zweiter Fehler tritt unter nur,
int** add(int **left, int leftCount, int **right, int countRight, int &countResult){
for (int q; q < leftCount; q++){
for (int r = 0; r < 2; r++){
if (left[q][1] == right[q][r]){
countResult[q][0] = left[q][0] + right[q][0];
}
}
}
}
In der Zeile countResult[q][0] = left[q][0] + right[q][0];
, wo der Compiler feststellt, dass der erste q "-Ausdruck einen Zeiger-zu-Objekt-Typ haben muss, obwohl ich nicht sehen kann, wie q einen Zeiger machen würde.
Vollständiger Code hier: http://pastebin.com/FsM1ydE5. Jede Hilfe in dieser Angelegenheit würde sehr geschätzt werden.
Die Fehlermeldung ist ziemlich klar, nicht wahr? 'polyArray [i] [0];' ist kein 'const char *' - Typ, wie erforderlich. –
Ich versuche, die Strings in Array 'Coefficient' in Arrays im Array 'PolyArray' zu konvertieren. Habe ich die Positionen der beiden Arrays vertauscht? – Hatches
Der Zuweisungsoperator nimmt den Wert auf der rechten Seite und weist ihn der var auf der linken Seite zu. Das ist ein bisschen einfaches Zeug. –