Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (WinAPI, Konsole) » Werte aus Datei lesen und in Array speichern

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
17.11.2009, 16:53 Uhr
~Manda
Gast


Hallo zusammen (hoffe ihr seit nicht böse, wenn ich schon wieder Frage ) ,
ich versuche Werte aus einer Datei auszulesen und in ein int-Array[][] zu speichern. Diesen anschließend wieder ausgeben.

Textdatei (ohne Leerzeichen):
530070000
600195300
098000060
800060003
400803001
700020006
060000280
000419005
000080079


C++:
void main(void)
{
   FILE *fp = NULL;
   int matrix[9][9];
   int i,j,z;

   fp = fopen("test.txt","r");
   for ( i=0; i<10; i++ ) //Hier muss ich auch bis 10 laufen um ALLE Werte zu kriegen
   { //obwohl es immer 9 Werte pro Zeile sind
      for ( j=0; j<10; j++ )
      {
         z = fgetc ( fp );                
         if ( z == EOF )
         {
            i = 10;
            break;
         }
         printf ( "|%c", z );   //1. Ausgabe ist ok!            
         matrix[i][j] = z;                
     }
   }

//gleich danach die Ausgabe: die Falsch ist
   for(i=0; i<9; i++)
   {
    for(j=0; j<9; j++)
    {
       printf(" |%d ", matrix[i][j]);//2. Ausgabe leider andere Werte
    }
    printf("\n");
   }
}



1.Ausgabe ist korrekt
2.Ausgabe gibt leider ganz andere Werte aus.

Liegt es vielleicht an dem " %c " beim einlesen? Da ich ein Zeichen einlese und in eine int matrix speichere?
Speichern wollte ich sie eigentlich auch gerne in die int matrix.

Gruß
Manda
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
17.11.2009, 17:26 Uhr
0xdeadbeef
Gott
(Operator)



C++:
matrix[i][j] = z - '0';


Außerdem solltest du darauf achten, dass diese Zeile niemals aufgerufen wird, wenn i oder j 10 sind. So, wie das da steht, ist das Verhalten des Programms undefiniert.
--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
17.11.2009, 17:37 Uhr
~Manda
Gast


Ok. Danke vielmals!
Funktioniert jetzt.

Gruß
Manda
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (WinAPI, Konsole) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: