Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (WinAPI, Konsole) » string in const char

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 < [ 2 ]
000
25.12.2006, 23:08 Uhr
Multi



ich habe folgendes problem
ich will einen manipulierten string in eine datei(txt) speichern

hab es so versucht (wenn in c\test.txt 1.12.1234 (nur beispiel) steht)

C++:
// .-

#include <iostream>
#include <cstdio>
#include <string>

using namespace std;
string a;
int pos1, pos2;
int main(void)
{
   FILE *Datei;
   Datei = fopen("c:\\test.txt", "rt");

   char Puffer[20];

   if(NULL == Datei)
   {
       return -1;
   }
   while(!feof(Datei))
   {
       fgets(Puffer, 19, Datei);
       a = Puffer;
       cout << a << endl;
  }
   fclose(Datei);

pos1 = a.find(".", 0);
cout << pos1 << endl;
a.replace(pos1, 1, "");
cout << a << endl;
pos2 = a.find(".", 3);
cout << pos2 << endl;
a.replace(pos2, 1, "");
cout << a << endl;
cout << a << endl;

   Datei = fopen("c:\\test.txt", "wt");
   fprintf(Datei, a);
   fclose(Datei);
}


mit fehlermeldung

Code:
error C2664: 'fprintf' : cannot convert parameters 2 from 'std::string' to 'const char *'



mein frage wie kann man einen string in char umwandeln
--
Microschrott präsentiert
Windoof SE Natiol
jetzt sofort den Mega-Bundle bestellen
mit der stylischen 3Tasten Tastartur
(Strg, Alt, Entf)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
25.12.2006, 23:13 Uhr
Blubber2063



Also erstmal hat die string Klase eine Methode c_str() die dir die Conversion liefert. Und zweitens solltest du in C++ die Streamklassen benutzen da hast du das Problem ja gar nicht.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
25.12.2006, 23:46 Uhr
Multi



ähm.....

ich würds gerne mit fopen machen


wie macht man das mit diesem c_str()?
--
Microschrott präsentiert
Windoof SE Natiol
jetzt sofort den Mega-Bundle bestellen
mit der stylischen 3Tasten Tastartur
(Strg, Alt, Entf)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
25.12.2006, 23:49 Uhr
Multi



danke fürs antworten

habs grad gefunden (ne möglich keit wie man es machen kann^^)
--
Microschrott präsentiert
Windoof SE Natiol
jetzt sofort den Mega-Bundle bestellen
mit der stylischen 3Tasten Tastartur
(Strg, Alt, Entf)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
26.12.2006, 00:18 Uhr
Multi



heul

wie kann man nen string in ne int machen?

habs soweit abgeändert

C++:
cout << a << endl;

   Datei = fopen("c:\\test.txt", "wt");

   fprintf(Datei,"%d", a);

   fclose(Datei);



aber in der datei steht 0

würde mir sehr weiter helfen das mit str in int
aber StrToInt() geht nicht und static_cast<int>() geht auch nit (bin ich zu doof????)
--
Microschrott präsentiert
Windoof SE Natiol
jetzt sofort den Mega-Bundle bestellen
mit der stylischen 3Tasten Tastartur
(Strg, Alt, Entf)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
26.12.2006, 00:21 Uhr
Multi



ach schrott hier


lag am compiler mit nem andrem gehts^^ sodar so wie es soll^^
--
Microschrott präsentiert
Windoof SE Natiol
jetzt sofort den Mega-Bundle bestellen
mit der stylischen 3Tasten Tastartur
(Strg, Alt, Entf)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
26.12.2006, 00:56 Uhr
xXx
Devil


hmm jo dein Code ist aber trotzdem nen grauenhafter mischmasch ....
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
26.12.2006, 08:44 Uhr
~f.-th.
Gast


Der eine Compiler hat schon recht, wenn er sich weigert den Code zu übersetzen.
Headerdateien: C++ mit STL und im weiteren C obwohl es einfach zu handhabende
C++ -Varianten gibt.

Kannst den streikenden Compiler wahrscheinlich überreden, wenn du die entsprechenden
C-Headerdateien includest. Das sollte man aber normalerweise vermeiden. Meist ist der
Code dann sehr wartungsunfreundlich.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
26.12.2006, 10:00 Uhr
Multi



*räusper*

ich weiß das es ein ziemlicher mischmasch ist mir sind keine andren methoden eingefallen

hauptsache es funktioniert



ach wegen dem

Zitat:

wenn du die entsprechenden
C-Headerdateien includest



(erst mal muss man sagen mein versagen)
ich hab eigentlich alles includiert da ich aber code::blocks benutze ist wahrscheinlich meine schuld das code::blocks die .h nicht gefunden hat (oder bei meinen einstellungen wahrscheinlich noch aus den directX lib´s)


ansonsten beim andren compiler (schon ales voreingestellt man kann aber nix mehr umstellen von wegen compiler options )
ging es ja


aber is ja auch egal hauptsache es funktioniert

trotzdem danke fürs aufmerksam machen
--
Microschrott präsentiert
Windoof SE Natiol
jetzt sofort den Mega-Bundle bestellen
mit der stylischen 3Tasten Tastartur
(Strg, Alt, Entf)

Dieser Post wurde am 26.12.2006 um 10:04 Uhr von Multi editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
009
26.12.2006, 11:21 Uhr
Blubber2063



Das es bei dem anderen Compiler geht liegt bestimmt dran, das das StrToInt eine Borland Funktion ist, die es im C++ Standard nicht gibt.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 < [ 2 ]     [ 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: