Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Anfänger Programmproblem

Mitglied: sabio23

sabio23 (Level 1) - Jetzt verbinden

02.04.2008, aktualisiert 05.04.2008, 3452 Aufrufe, 7 Kommentare

Habe folgendes kleines Notizprogramm (es ist noch nicht ganz fertig)

01.
#include<iostream> 
02.
#include<fstream> 
03.
#include<string> 
04.
#include"conio.h" 
05.
#include<cstdlib> 
06.
 
07.
using namespace std; 
08.
 
09.
//SAVE FUNKTION 
10.
void save() 
11.
12.
       cout<<"Sie haben SAVE eingegeben\n"; 
13.
       cout<<"Sie koennen nun eine Notiz eingeben,\n"; 
14.
       cout<<"oder mit \"back\" ins MENU zurueck gehen\n"; 
15.
       string notiz; 
16.
       getline (cin, notiz); 
17.
       ofstream fout ("owner.txt",ios::app); 
18.
       fout<<notiz; 
19.
       fout<<"\t\t\t"; 
20.
       fout<<"Nich Erledigt\n"; 
21.
       fout.close(); 
22.
23.
 
24.
//OPEN FUNKTION 
25.
 
26.
void open() 
27.
28.
     ifstream fin ("owner.txt"); 
29.
     string zeilen[1000]; 
30.
     char line[200]; 
31.
     int i = 0; 
32.
     fin.getline(line,200); 
33.
     while (!fin.eof()) 
34.
35.
           cout<<line<<"\n"; 
36.
           zeilen[i++] = line; 
37.
           fin.getline(line,200); 
38.
39.
      
40.
41.
 
42.
 
43.
//MAIN PROGRAMM 
44.
int main() 
45.
46.
    cout<<"Hallo! Ich bin ein Notizprogramm\n"; 
47.
    cout<<"Gib \"HELP\" ein um zu sehen, was du machen kannst\n"; 
48.
    string user; 
49.
    while (user!="exit") 
50.
51.
          cin>>user; 
52.
          if (user=="exit" or user=="EXIT") 
53.
54.
                           cout<<"Sie haben das Programm beendet\n"; 
55.
                           cout<<"Druecken sie eine Taste um das Fenster zu schliessen\n"; 
56.
57.
          else if (user=="help" or user=="HELP") 
58.
59.
                        cout<<"Sie haben HELP eingegeben.\n\n"; 
60.
                        cout<<"Gebe \"SAVE\" ein um eine neue Notiz zu speichern\n"; 
61.
                        cout<<"Gebe \"OPEN\" ein um deine Notizen zu sehen\n"; 
62.
                        cout<<"Gebe \"EDIT\" ein um deine Notizen zu bearbeiten\n"; 
63.
                        cout<<"gebe \"EXIT\" ein um das Programm zu beenden\n"; 
64.
65.
          else if (user=="save" or user=="SAVE") 
66.
67.
                  save(); 
68.
69.
          else if (user=="open" or user=="OPEN") 
70.
71.
                                open(); 
72.
73.
          else 
74.
75.
                           cout<<"Sie haben sich vertippt\n"; 
76.
77.
78.
 
79.
getch();  
80.
81.
 

Das Problem liegt nun hier drin:

01.
//SAVE FUNKTION 
02.
void save() 
03.
04.
       cout<<"Sie haben SAVE eingegeben\n"; 
05.
       cout<<"Sie koennen nun eine Notiz eingeben,\n"; 
06.
       cout<<"oder mit \"back\" ins MENU zurueck gehen\n"; 
07.
       string notiz; 
08.
       getline (cin, notiz); 
09.
       ofstream fout ("owner.txt"); 
10.
       fout<<notiz; 
11.
       fout.close(); 
12.
}
Er lässt mich in notiz nichts eingeben, er springt einfach wieder in die main Funktion zurück, wenn ich es nur mit cin mache, also so:

01.
//SAVE FUNKTION 
02.
void save() 
03.
04.
       cout<<"Sie haben SAVE eingegeben\n"; 
05.
       cout<<"Sie koennen nun eine Notiz eingeben,\n"; 
06.
       cout<<"oder mit \"back\" ins MENU zurueck gehen\n"; 
07.
       string notiz; 
08.
       cin>>notiz; 
09.
       ofstream fout ("owner.txt"); 
10.
       fout<<notiz; 
11.
       fout.close(); 
12.
}
Dann geht zwar alles einwandfrei. Aber wenn ich es so nutze, kann er ja nur ein Wort speichern, und nicht einen vollständigen Satz.

Was mache ich falsch?
Mitglied: Natureshadow
03.04.2008 um 10:41 Uhr
Hallo,

die Mitgliedsmethode getline() von istream erwartet als Parameter ein char-Array (auch C-String genannt) und einen Integer.

Du musst also etwas in der Form

01.
char eingabe[256]; 
02.
cin.getline(eingabe, 256);
ausführen.

Um das Ganze dann in ein String-Objekt zu konvertieren, machst du dann noch

01.
string notiz(eingabe, 256);
Grüße,
Nik

P.S.: Wie kommst du auf deine Version der getline()-Methode da ???
Bitte warten ..
Mitglied: sabio23
04.04.2008 um 19:18 Uhr
Ah oke, danke hat geklappt. Jetzt hät ich ma noch ein zwei Fragschen zum Thema GUI.
WOllt mal anfangen etwas näheres über das Thema GUI zu lernen. Allerdings egal, was ich bis jetzt probiert habe an irgendetwas ist es gescheitert.

Habe angefangen mit Visual Studio, wenn ich dann ein Project öffne, also Windows-Anwendung dann kann ich ja auch Fenster basteln und so weiter, alles kein Problem. Aber wo kann ich da dann C++ Anwenden, und besonders wie. Habe schon in google nach Tutorials geschaut, das beste das ich gefunden hab, war das für QT. Aber das Tutorial, beschäftigt, sich ja nur mit Code und nicht mit dem Programm QT an sich und wie man es mit C++ verbindet. Auserdem geht das erste Beispiel bei mir schon nicht.

01.
 #include <QApplication> 
02.
 #include <QPushButton> 
03.
 
04.
 int main(int argc, char *argv[]) 
05.
06.
     QApplication app(argc, argv); 
07.
 
08.
     QPushButton hello("Hello world!"); 
09.
     hello.resize(100, 30); 
10.
 
11.
     hello.show(); 
12.
     return app.exec(); 
13.
 }
Er sagt, das QApplication nicht deklatiert ist, also stimmt wohl was an der Lib nicht?

Und wenn man in dem Programm QT ein Fenster designed ist das alles auch nicht schwer oder kompliziert. Aber wie programmiert man das dann? Man bekomtmt ja nur eine .ui Datei raus. Wohin damit?

Und wie lernt man am besten das gestalten eines GUI INKLUSIVE den C++ Code richtig anzuwenden? Die Tutorials fangen mit einem Code an, der ja nicht mal richtig geht. Und in den Programmen kann man alles nur Designen.

Ich würde ja mehr lesen und forschen, aber ich weis nicht wo und was.

Bitte um Hilfe
Bitte warten ..
Mitglied: Natureshadow
04.04.2008 um 22:47 Uhr
Eigentlich neues Thema, neuer Thread ...

Zu was sollte QApplication denn gehören? Qt?

-nik
Bitte warten ..
Mitglied: sabio23
04.04.2008 um 23:27 Uhr
Ich hab leider keine Ahnung.
Habe das von da:
http://doc.trolltech.com/4.3/tutorial.html
genauer gesagt:
http://doc.trolltech.com/4.3/tutorial-t1.html

habe den Code einfach mal in dev-c++ getan und versucht zu kompilieren
Bitte warten ..
Mitglied: Natureshadow
05.04.2008 um 00:25 Uhr
Oben drüber steht dick und fett "Qt Tutorial". Also solltest du wissen, dass es Qt ist ..

kA, ob es Qt unter Windows gibt - ich denke nicht.

-nik
Bitte warten ..
Mitglied: sabio23
05.04.2008 um 11:16 Uhr
2. Doch gibt es habs auch unter Windows....
1. Das weis ich auch
Das Problem ist ja, das man in dem Programm QT kein bisschen Code schreiben kann, NUR designen. Also hab ichs erst ma in dev-c++ probiert.

Das einzigste was ich bei QT als Ergebniss haben kann, ist eine .ui Datei.

Aber hab mich jetzt sowieso an kbasic gemacht. Sieht schon mal am Anfang viel positiver aus
Bitte warten ..
Mitglied: Natureshadow
05.04.2008 um 11:47 Uhr
Das Problem ist ja, das man in dem Programm
QT kein bisschen Code schreiben kann, NUR
designen.

Ich dachte immer, Qt wäre eine Bibliothek ..?
Bitte warten ..
Ähnliche Inhalte
Weiterbildung
Wo soll ich anfangen?
gelöst Frage von 122552Weiterbildung7 Kommentare

Hallo alle zusammen! Im September schließe ich meine Ausbildung zum Fachinformatiker - Systemintegration meine schulischen Noten sind soweit in ...

Java

Java Entwicklungsumgebung für Anfänger

gelöst Frage von tabociyaJava5 Kommentare

Hallo Leute, ich versuche gerade Java zu lernen. Ich habe mir auch Visual basic mit Visual Studio beigebracht. gubt ...

Windows Server

Anfänger Frage zum Thema Migration!

gelöst Frage von Stefan007Windows Server7 Kommentare

Hallo Leute, da das Thema sicherlich viel Raum für Meinungen zulässt, schränke ich das mal nur auf Windows Server ...

Windows 7

Hilfe bei Batch Aufgabe (Anfänger)

Frage von Miss-carrieWindows 73 Kommentare

Hallo, ich habe ein Beispiel bekommen von meinem Ausbildner und komme leider überhaupt nicht weiter und würde euch daher ...

Neue Wissensbeiträge
Ausbildung

Linux-Ausstieg in Niedersachsen - Windows statt Bugfix

Information von StefanKittel vor 17 StundenAusbildung8 Kommentare

Sind ja nur Steuergelder

Speicherkarten

Neuer Speicherkartentyp - zunächst nur für Huawei-Smartphones (künftig auch für Notebooks u. Tablets?)

Tipp von VGem-e vor 2 TagenSpeicherkarten2 Kommentare

Servus, als ob das "Chaos" i.S. Speicherkarten noch nicht groß genug wäre?! Evtl. kommt dieser neue Kartentyp bald auch ...

Sicherheit

Diverse D-Link-Router durch drei Schwachstellen kompromittierbar

Information von kgborn vor 2 TagenSicherheit

Hat jemand D-Link-Router in Verwendung? Einige Modelle sind sicherheitstechnisch offen wie ein Scheunentor. Äußerst unschöne Sache, aber nichts neues ...

Hardware

100.000 Mikrotik-Router ungefragt von Hacker abgesichert

Information von 7Gizmo7 vor 3 TagenHardware3 Kommentare

Hallo zusammen, da hier ja öfters mal von Mikrotik gesprochen wird. Trotz Updates klafft eine Sicherheitslücke in Hundertausenden Mikrotik-Routern. ...

Heiß diskutierte Inhalte
Off Topic
SysAdmin im öffentlichen Dienst - jemand Erfahrungen?
Frage von JohnDorianOff Topic22 Kommentare

Hallo zusammen, hat jemand Erfahrung wie es so ist als SysAdmin im öffentlichen Dienst (Landkreis) im Südwesten der Republik ...

SAN, NAS, DAS
Nas mit USB und LAN gleichzeitig zugreifen
gelöst Frage von MarkBeakerSAN, NAS, DAS16 Kommentare

Hallo zusammen, ich suche eine Art NAS, womit ich via LAN und USB zugreifen kann. Folgender Aufbau ist gedacht: ...

Vmware
Offene LDAP-Server in AS
gelöst Frage von obi-wan-kenobiVmware16 Kommentare

Hallo alle Miteinander, ich habe ein Problem, unsere VM-Ware Appliance (Version. 6.5.0.10000) ist scheinbar angreifbar. Wir haben eben die ...

Entwicklung
Ist dies als Programmieren zu bezeichen?
Frage von kmsw110Entwicklung13 Kommentare

Hallo, ein Kollege redet dauernd darüber das er im Betrieb seine Maschinen (Fräsmaschinen) Programmiert bzw. Zahlenwerte in ein .txt ...