Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (WinAPI, Konsole) » Absturtz in der for-schleife

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
11.09.2004, 20:05 Uhr
RedEagle




C++:
void crypt(string file)
{
  int lange=0;
  lange = GetWindowTextLength(hwndEdit);
  
  char *daten;
  daten = new char[lange+2];
  GetWindowText(hwndEdit, daten, lange+1);

  string text;
  text = daten;
  
  for(int i = 0; i < text.size(); ++i)
  {
   text[i] = text[i] ^ pw[i % pw.size()];
  }
  
    ofstream out;
    out.open(file.c_str());
    out << text;
    out.close();
  
  delete(daten);
}


Wenn ich die for-schleife weglasse, funktionierts, sonst stürtzt die Funktion ab.

Warum??
Ich finde den fehler nicht
Ich habe die gleiche schleife, in einem anderen Programm getestet (konsole) und da ging es Problemlos.

In beiden Programmen war/ist "text" und "pw" std::string

Ich habe die Funktion jetzt schon zwei mal geschrieben, und für mich sieht der Code fehlerlos aus.

Vieleicht findet ihr ihn?.
--
MFG RedEagle
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
11.09.2004, 20:24 Uhr
Bruder Leif
dances with systems
(Operator)


Ohne groß zu testen würde ich das erst mal umschreiben:


C++:
void crypt(string file)
{
  int lange = GetWindowTextLength(hwndEdit);
  char *daten = new char[lange+1];
  
  GetWindowText(hwndEdit, daten, lange);

  for(int i = 0; i < lange; ++i)
    daten[i] = daten[i] ^ pw[i % pw.size()];
  
  ofstream out;
  out.open(file.c_str());
  out << daten;
  out.close();
  
  delete(daten);
}


--
Mit 40 Fieber sitzt man nicht mehr vor dem PC.
Man liegt im Bett.
Mit dem Notebook.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
11.09.2004, 20:27 Uhr
(un)wissender
Niveauwart


pw ist vielleicht leer?
--
Wer früher stirbt ist länger tot.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
11.09.2004, 21:10 Uhr
RedEagle




das wars, danke
--
MFG RedEagle
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
11.09.2004, 23:44 Uhr
(un)wissender
Niveauwart


Jupp!

Als Tipp:
Hinter vergleichbare Probleme zu kommen ist nicht schwer, du musst alles ausschließen was du sicher hast, und dann den Rest einzeln überprüfen.
--
Wer früher stirbt ist länger tot.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
12.09.2004, 11:07 Uhr
Guybrush Threepwood
Gefürchteter Pirat
(Operator)


oder einfach mal debuggen
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
12.09.2004, 11:19 Uhr
RedEagle



Ich wieß nicht, wie man debuggt

habe dev-cpp
--
MFG RedEagle
 
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: