Wieso wird das Array nicht ins andere Array kopiert ich suche die ganze zeit nach dem Fehler er gibt nur 0 aus?

... komplette Frage anzeigen

1 Antwort

  1.  mit ia <= 10 gehst du über die array-grenzen hinaus (11. position), es muss bei den schleifen ia < 10 heissen (ebenso ib)
  2. mit array[ia] = array2[ix]; überschreibst du array mit irgendwas undefinierten: array2 wurde nicht mit werten initialisiert und ix auch nicht - wozu ix?
  3. die do - while - schleife macht keinen sinn, durch die 1. for-schleife hat ia den wert 11.
Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von ilo324
28.12.2015, 02:05

int main() {
int array[10];
cout << " Bitte geben sie ihr Array ein " << endl;

for (ia = 0; ia < 10; ia++) { // Eingabe
cin >> array[ia];
}
for (ia = 0; ia < 10; ia++){ // Ausgabe
cout << "Ihr Array1 lautet " << array[ia] << endl;
}

memcpy(array2, array, sizeof(array));

for (ia = 0; ia < 10; ia++){ // Ausgabe
cout << "Ihr Array2 lautet " << array2[ia] << endl;
}

system("pause");
return 0;

}

so gehts danke für den hinweis

0
Kommentar von TeeTier
28.12.2015, 03:59

Array-Grenzen und Rücksicht auf nichtinitialisierte Variablen sind was für Weicheier!

Echte Männer dereferenzieren auch den Null-Pointer und geben den Stack mittels free() wieder frei! :)

0

Was möchtest Du wissen?