EDIT zu nennen: EDIT: Vielen Dank, dass Sie sich die Zeit nehmen zu antworten. Ich habe alle Vorschläge nacheinander versucht und es hat immer noch nicht funktioniert. Ich wollte das wirklich einreichen, ohne den Professor um Hilfe bitten zu müssen und zu zeigen, dass ich nicht herausfinden konnte, wie es geht, aber zu diesem Zeitpunkt, denke ich, werde ich genau das tun müssen. Ich schätze es, dass Sie sich die Zeit genommen haben, um zu helfen! Vielen Dank.Kann nicht scheinen, Funktion richtig in C++
Ich nehme einen C++ Kurs und habe eine Aufgabe, mit der ich Probleme habe. Ich bekomme immer den Fehler: "erwartete Primary-Ausdruck vor 'Int'" von allen drei Array-Deklarationen. Und "wurde nicht in diesem Umfang erklärt" von allen drei Adressen. Dies ist auf dem Compiler, den ich normalerweise verwende. Ich versuchte einen anderen Compiler, und der Fehler, den ich bekam, war "prog.cpp: 14: 38: Fehler: kann 'std :: array ' nicht zu 'int' für Argument '1' zu 'void addArrays (int *, int *, int *) ' addArrays (& Array1, & Array2, & Array3); Ich bin nicht wirklich sicher, was passiert, als ich ein Anfänger bin und hoffte, dass jemand mir sagen könnte, was diese Fehler bedeuten und was ich tun kann, um sie zu beheben. Vielen Dank im Voraus. Hier ist der Code, den ich habe:
#include <iostream>
#include <array>
using namespace std;
void addArrays(int*, int*, int*);
int main()
{
array< int, 20 >array1 =
{7,45,90,1,33,254,3,8,9,4,2,6,77,5,9,2,22,4,12,6};
array< int, 20 >array2 =
{88,4,6,75,1,12,33,99,66,88,7,4,44,4,3,13,5,4,9,3};
array< int, 20 >array3;
addArrays(&array1,&array2,&array3);
cout << "Array1 + Array2 = Array3" << endl;
int j;
for(j=0; j<20; ++j)
cout << array1[j] << "+" << array2[j] << "=" << array3[j] << endl;
return 0;
}
void addArrays(int *array1, int *array2, int *array3)
{
int i;
for(i=0; i<20; ++i)
array3[i] = array1[i]+array2[i];
}