Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > C/C++
You last visited: Today at 17:20

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



C++ brauche Hilfe

Discussion on C++ brauche Hilfe within the C/C++ forum part of the Coders Den category.

Reply
 
Old   #1
 
koal89's Avatar
 
elite*gold: 0
Join Date: Nov 2007
Posts: 803
Received Thanks: 215
Exclamation C++ brauche Hilfe

Hi Com.

Also ich hab ein Problem bei C++ bei dem ich eure Hilfe brauche.
Ich hab also ein Textdokument wo z.B. in der ersten zeile Hansi, in der 2ten Fred und in der 3ten Seppi drinnen steht.

Das C++ Programm soll das Textdokument lesen, und ausgeben. Ich schaff dass er das genau so ausgiebt wie es im textdoc steht. Also so:

Hansi
Fred
Seppi

Ich soll es aber so ausgeben das jede Zeile ne überschrift hat. Sieht dann c.a so aus:

Zeile 1
Hansi
Zeile 2
Fred
Zeile 3
Seppi


Wie schaff ich das?
Mein Prog sieht ohne Überschriften bis jetzt so aus:

int main(int argc, char **argv)
{
int i;
char c;

FILE *Datei;
char DateiName[80];
printf("\nDateiName: ");
scanf("%s",DateiName);

Datei=fopen(DateiName,"r");
if (Datei==NULL)
printf("Fehler beim oeffnen der Datei %s",DateiName);
else
while ((c=getc(Datei))!=EOF)
{
printf("%c",c); // --> damit gib ich das Dokument 1 zu 1 aus. Mir fehlen aber noch die Überschriften. Wie mach ich die?

}



getch();


return 0;
}


hoffe ihr könnt mir helfen.. Bin nicht so der c++ könner also pls keine komplizierten erklärungen wenns geht^^ Am besten wäre es wenn ihr es in meinen Quelltext einbaut, es postet und mir erklären könnt wie das geht.

Lg
Der c++ Noob^^
koal89 is offline  
Old 06/01/2010, 20:51   #2
 
xNopex's Avatar
 
elite*gold: 0
Join Date: May 2009
Posts: 827
Received Thanks: 471
C++ -> fstream, string:


Code:
#include <iostream>
#include <fstream>
#include <string>

using namespace std;


int main()
{
    string file;
    cout << "Dateiname: ";
    getline( cin, file );
    ifstream in( file.c_str() );
    if( ! in.good() )
        return 1;
    for( int i = 1; ! in.eof(); i++ )
    {
        cout << "Zeile " << i << "\n";
        string temp;
        getline( in, temp );
        cout << temp << "\n";
    }
    in.close();
}
xNopex is offline  
Old 06/01/2010, 20:56   #3


 
MrSm!th's Avatar
 
elite*gold: 7110
Join Date: Jun 2009
Posts: 28,902
Received Thanks: 25,407
Code:
string tmp;
in >> tmp;
cout << "Zeile" << i << "\n" << tmp << endl;
>> tuts übrigens auch, da du ja jeden Namen in einer neuen zeile hast.
so wird direkt, bis der string zuende ist, eingelesen.
MrSm!th is offline  
Old 06/01/2010, 21:03   #4
 
P-a-i-n's Avatar
 
elite*gold: 0
Join Date: Nov 2009
Posts: 1,258
Received Thanks: 396
ich hätte es so gemacht

lese lieber zeichen aus so hat man weniger arbeit

PHP Code:
#include <iostream>
#include <fstream>
#include <string>
using namespace std;

int main()
{
  
ifstream datei// deklarration
  
string dateiname("C:\\Users\\Pain\\Desktop\\test.txt");// welche datei eingelesen werden soll wictig die doppel \\ 
  
cout << "Datei einlesen \n";


  
datei.open(dateiname.c_str(), ios_base::in); //datei mit dem eingabe stream verbinden und zum lesen öffnen
  
  
if(!datei// wenn datei nicht gefunden wird 
  
{
     
cout << "Datei konnte nicht geoeffnet werden!"// ausgabe
     
cout << endl//ausgabe
     
return -1
  }

  
char zeichen;

  while (!
datei.eof())// whirlschleife das eof gibt ein true zurück wenn datei zuende gelesen ist und die schleife wird beendet will sie dann nicht mehr ungleich ist
  
{
    
datei.get(zeichen); // hier wird zeichen für zeichen eingelesen mit diesem get() wenn zeilen würde es bei einer bei großen leerzeilen abbrechen ;)
    
cout << zeichen // für buchstaben untereinander das-> cout << zeichen << endl;
  
}


  
datei.close(); // und die datei schließen 
  
getchar(); // das muss man nicht unbedingt machen starten ohne debuggen hält die konsole auch auf in VC++ strg + F5 ;)

  
return 0;

P-a-i-n is offline  
Old 06/02/2010, 17:24   #5


 
MrSm!th's Avatar
 
elite*gold: 7110
Join Date: Jun 2009
Posts: 28,902
Received Thanks: 25,407
nun wirds aber overkill.
er woll nur einzelne namen ausgeben + Zeile 1 etc.

da ist ifstream operator >> bestens geeignet
MrSm!th is offline  
Old 06/02/2010, 18:03   #6
 
P-a-i-n's Avatar
 
elite*gold: 0
Join Date: Nov 2009
Posts: 1,258
Received Thanks: 396
was macht es den denkste er schreibt alles untereinander ^^
ich hab ihn extra das gegeben wenn er den source etwas abändert aus dem ios:base::in ein out macht die schleife löscht das instream in ofstream ändert und unten datei << "blabla"; macht kann er sogar es speichern :P
man soll es sich immer leicht machen und nicht mit der kirche ums dorf ziehen :P

wieso schwer machen wenn man es sich leicht machen kann und mit kleinen veränderung auch das gegenteil erreicht

P-a-i-n is offline  
Old 06/02/2010, 18:34   #7

 
Adroxxx's Avatar
 
elite*gold: 15
Join Date: Nov 2005
Posts: 13,021
Received Thanks: 5,324
Hat nichts mit Gamehacking zu tun.
#moved nach coders
Adroxxx is offline  
Old 06/03/2010, 01:33   #8


 
MrSm!th's Avatar
 
elite*gold: 7110
Join Date: Jun 2009
Posts: 28,902
Received Thanks: 25,407
Quote:
Originally Posted by P-a-i-n View Post
was macht es den denkste er schreibt alles untereinander ^^
ich hab ihn extra das gegeben wenn er den source etwas abändert aus dem ios:base::in ein out macht die schleife löscht das instream in ofstream ändert und unten datei << "blabla"; macht kann er sogar es speichern :P
man soll es sich immer leicht machen und nicht mit der kirche ums dorf ziehen :P

wieso schwer machen wenn man es sich leicht machen kann und mit kleinen veränderung auch das gegenteil erreicht

warum denn bitte schwer???
dein code ist komplizierter als der mit ifstream operator >>
und ja klar macht er es untereinander, guck doch in den ersten post.
wenn du ofstream operator << nimmst, wirds passend dazu auch gespeichert, ein string pro zeile, genau so, wie es im startpost gefragt ist.

keine frage, deine variante ist flexibler, allerdings hierfür unnötig.
MrSm!th is offline  
Old 06/03/2010, 03:37   #9
 
P-a-i-n's Avatar
 
elite*gold: 0
Join Date: Nov 2009
Posts: 1,258
Received Thanks: 396
das ist mir voll wurst was passt und was nicht
1 wichtig ist das es geht
2 ich konnte meins erklären er wollte eine erklärung er hat sie gekriegt
3 für anfänger sind for schleifen weit schwerer zu verstehen
achso ich vergas und du hast ja immer recht sorry GOTT
P-a-i-n is offline  
Old 06/03/2010, 16:30   #10


 
MrSm!th's Avatar
 
elite*gold: 7110
Join Date: Jun 2009
Posts: 28,902
Received Thanks: 25,407
Quote:
Originally Posted by P-a-i-n View Post
das ist mir voll wurst was passt und was nicht
ist aber nicht gerade produktiv...
Quote:
1 wichtig ist das es geht
stimmt. habe ich etwas dagegen gesagt oder habe ich gesagt, dass hierfür operator >> besser geeignet ist?
Quote:
2 ich konnte meins erklären er wollte eine erklärung er hat sie gekriegt
ich habe doch nur einen verbesserungsvorschlag gemacht.
es gibt keinen grund, ausfallend zu werden, nur weil ich gesagt habe, dass es hierfür ein overkill ist
Quote:
3 für anfänger sind for schleifen weit schwerer zu verstehen
woher hast du das denn?
findest du nicht, etwas größere codes, so wie deiner sind schwerer zu verstehen? klar, er ist kommentiert, aber ich rede vom code selbst.
eine for schleife kann man ja auch kommentieren.
Quote:
achso ich vergas und du hast ja immer recht sorry GOTT
nunja, nicht immer, aber meistens.
liegt daran, dass ich meistens entweder erst gar nicht diskutiere, wenn ich weiß, dass ich unrecht habe oder dass ich meine meinung zwischendurch ändere, weil mir selbst klar geworden ist, dass die alte nicht ganz gepasst hat.
so habe ich am ende fast immer den standpunkt, der bei einer frage, bei der es einen richtigen gibt, der richtige ist.
gibt aber auch situationen, in denen ich unrecht habe und mich auch korrigieren lasse
aber wie gesagt, es gibt doch keinen grund ausfallend zu werden, ich habe weder dich kritisiert, noch deinen code.
ich habe lediglich gesagt, dass es hierfür ein overkill ist und für einen anfänger vielleicht noch zu kompliziert.
MrSm!th is offline  
Reply


Similar Threads Similar Threads
[Sammelthread]Brauche hilfe/Biete hilfe beim p-server erstellen
07/07/2011 - Metin2 Private Server - 14 Replies
Jeder einzelne um hilfe bittet bzw bietet. Dafür muss nicht immer ein extra Thread eröffnet werden ;) -Posted eure fragen -Eure probleme -Oder wenn ihr Hilfe anbietet doch einfach hier hinein
[HILFE]Brauche hilfe beim FreeBSD Rootserver umbekannte Fehlermeldung.
09/09/2010 - Metin2 Private Server - 8 Replies
Hallo comunity. So, ich habe ja letztens schonmal was gefragt wegen dem kernel. Dem den rootserver gehört hat den den hoster eingeschreiben, die haben nun einen reinstall gemacht. So bis jetzt klappt alles, so wie es soll außer....das starten Wenn wir den den server starten möchten, kommt das: http://www.fotos-hochladen.net/uploads/unbenann11 tuptn6kfg.png
[Hilfe] Brauche Hilfe bei meinem Hamachi Server alles Fertig ausser Navicat und co.
08/07/2010 - Metin2 Private Server - 2 Replies
Guten Tag, Also ich habe heute mein Hamachi P-Server erstellt doch habe Paar Fragen. Kann ich nachdem ich Server erstellt habe VPC schließen also da wo Operation timed out steht. Wie kann ich das mit Navicat machen (wäre schön wenn einer alles einzeln beschreiben könnte). Wie funktionert das mit der Datenbank? Und wie erstelle ich Accounts?
Brauche Dringend Hilfe! Bin Metin spieler aber Brauche Hilfe
12/30/2009 - Metin2 Private Server - 0 Replies
Es gehört hier zwar nicht rein , aber ich weiß keine andere Lösung Ich habe seit einigen Tagen ein Problem... Microsoft Windows Search Protocol Host funktioniert nicht mehr Die Anwendung wird Aufgrund eines Problems nicht mehr richtig Ausgeführt. Ich weiß nicht was das ist und wie ich es loswerde.



All times are GMT +1. The time now is 17:21.


Powered by vBulletin®
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2025 elitepvpers All Rights Reserved.