Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » (dynamische) objekterzeugung und speicherung zur laufzeit

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 ] [ 3 ] [ 4 ] > 5 < [ 6 ]
040
19.06.2004, 01:47 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)



Zitat:

aber woher soll man sowas denn immer wissen


da hilft nur ein blick in die doku...
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
041
19.06.2004, 01:47 Uhr
typecast
aka loddab
(Operator)


Es gibt da was ganz tolles. Wenn du mal hier klickst, dann findest du die größte Informationsquelle, die es überhaupt gibt.
--
All parts should go together without forcing. ... By all means, do not use a hammer. (IBM maintenance manual, 1925)

Dieser Post wurde am 19.06.2004 um 01:48 Uhr von typecast editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
042
19.06.2004, 11:14 Uhr
songbird



Ich hab nochmal ne Frage:

Wenn doch char-arrays c sind, warum wird dann in den references auf www.cplusplus.com nur damit gearbeitet?


C++:
/* strcmp example */
#include <stdio.h>
#include <string.h>

int main ()
{
  char szKey[] = "apple";
  char szInput[80];
  do {
     printf ("Which is my favourite fruit? ");
     gets (szInput);
  } while (strcmp (szKey,szInput) != 0);
  printf ("Correct answer!\n");
  return 0;
}

 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
043
19.06.2004, 11:17 Uhr
typecast
aka loddab
(Operator)


Weil du in C++ auch C schreiben kannst. Die Sprache wurde so designt, dass man mit einem C++-Compiler auch (fast) alle C Programme kopilieren kann.

Warum die jetzt allerdings mit C-Style arbeiten kann ich dir nicht sagen. Ich würde mal vermuten, weil die das so gelernt haben und es gewöhnt sind
--
All parts should go together without forcing. ... By all means, do not use a hammer. (IBM maintenance manual, 1925)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
044
19.06.2004, 12:50 Uhr
~songbird
Gast


ja, aber wir können es ja nicht gleichzeitig n icht benutzen und dann doch wieder benutzen...

noch ne frage:

wenn wir folgendes benutzen:

C++:
std::string newTitle;
std::string newGenre;

cout << "Bitte Titel eingeben";
getline(cin,newTitle);

cout << "Bitte Genre eingeben";
getline(cin, newGenre)


Dann wird die erste Eingabe einfach übersprungen und wir können nur n Genre eingeben...
Wie kommt das???
Wir haben es auch schon mit cin.ignore(...) versucht. Dann können wir zwar was eingeben, es wird uns aber später nicht mehr ausgegeben
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
045
19.06.2004, 13:06 Uhr
typecast
aka loddab
(Operator)


Hmm. Bei mir funktioniert das einwandfrei. Vielleicht ist cin bei dir im Fehlerzustand.
Probier mal dass, vor dem einlesen:

C++:
cin.clear();


--
All parts should go together without forcing. ... By all means, do not use a hammer. (IBM maintenance manual, 1925)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
046
19.06.2004, 13:22 Uhr
songbird



Nöööö das geht auch nicht.
Wir verzweifeln......die Hausaufgabe können wir vergessen.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
047
19.06.2004, 14:04 Uhr
typecast
aka loddab
(Operator)


So. Ich habs. Wahrscheinlich hast du noch ein \n im Puffer stehen (danke an mike, der mich darauf hingewiesen hat).

Das kannst du vor dem einlesen des Titels machen:

C++:
std::cin.ignore(1, EOF);  //alle noch vorhandenen Zeichen ignorieren
std::cin.clear(); // Fehlerzustand löschen

std::string newTitle;
std::string newGenre;

cout << "Bitte Titel eingeben";
getline(cin,newTitle);

cout << "Bitte Genre eingeben";
getline(cin, newGenre)



Dann sollte es tun (diesesmal sogar getestet :-))


Bearbeitung:
Und nur nicht aufgeben, das wird schon mit der Hausaufgabe

--
All parts should go together without forcing. ... By all means, do not use a hammer. (IBM maintenance manual, 1925)

Dieser Post wurde am 19.06.2004 um 14:04 Uhr von typecast editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
048
22.06.2004, 00:36 Uhr
songbird



Danke nochmal an euch alle. Wir haben es letzendlich doch hinbekommen...nicht schön aber selten. und sogar komplett ohne zeiger

aber auch ohne char[] und dafür mit strings

www.cppreference.com hat auch gute Arbeit geleistet.

Das mit dem cin haben wir umgangen, indem wir ne while(newTitle == "")-Schleife drumgebaut haben...
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
049
22.06.2004, 12:53 Uhr
RHBaum



Hehe, dann grats, und was fuer eine Geburt ...
Noch ein paar lektionen, und dir wird C++ weit besser gefallen als Java ... glaub mir


Zitat:

Wenn doch char-arrays c sind, warum wird dann in den references


Vielleicht noch dazu ....
std::string und std::vector ist ein Ersatz fuer dynamisch allozierte Arrays.
also in C, ueberall wo die groesse dynamisch aufn Heap mit malloc oder so anlegst.
statische arrays, also sowas wie

C++:
const char * mystring("Test") ;  
int myArray[50];


koennte man mit

C++:
const std::string mystring("Test") ;  
std::vector<int> myArray(50);


ersetzen . Aber die Laufzeiten sollten man ned vergleichen ....
Vergleiche speicherallokierung im Stack vs. Heap. Und auch in C++ muessen manche Sachen sehr schnell sein ...


Zitat:
wenn man c++ verwendet sollte man alles was geht in klassen kapseln

Das ich das noch aus Windalfs Mund hoere ...

Ciao ...

Dieser Post wurde am 22.06.2004 um 12:57 Uhr von RHBaum editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: [ 1 ] [ 2 ] [ 3 ] [ 4 ] > 5 < [ 6 ]     [ C / C++ (ANSI-Standard) ]  


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: