Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Hi

Ich arbeite noch nicht lange mit C++. Für die Eingabe und Ausgabe habe ich scanf und printf benutzt. Dazu hätte ich mal 3 Fragen.

1.)Wie bekomme ich das hin, dass ich auch Buchstaben einlesen und die nachher wieder ausgeben kann? (Hab ich bisher nur mit Zahlen geschafft.) Bzw wie müssen die Variablen dafür definiert sein?

2.) Wie muss ich die Variablen definieren, damit ich auch Werte mit Komma eingeben / einlesen und rausbekommen kann? Wenn ich momentan z.B. 2,3 eingebe, dann wertet der das in der Funktion wie erster Wert 2 und zweiter Wert 3.

3.) Wie müssen die Variablen definiert sein, damit ich in einer Variablen Zahlen die länger als 10 Stellen sind speichern kann und nicht immer einen Overflow kriege?

MfG Crash2001 :)

Geschrieben

1.

zeichenkette einlesen:

 #include "stdafx.h"


int main(int argc, char* argv[])

{

	char test[250];

	printf("test :  ");

	scanf("%s",test);

	printf("\n mein test :  %s \n",test);

	return 0;

}


 

einzelnes Zeichen waere %c

2. bei kommazahlen brauchst du natuerlich Typen wie bei 3 (%d ist integer) und ich denke du musst punkte schreiben statt kommas

3. probiers mal mit %e oder %f fuer float oder double

nebenbei hat dir captain die ManPage fuer scanf und printf geschickt???? da ist das auch beschrieben :)

ach so cin ist simpler gestrickt (aber scanf ist besser ;))

Liebe Gruesse

Hasi

<FONT COLOR="#a62a2a" SIZE="1">[ 03. September 2001 15:16: Beitrag 2 mal editiert, zuletzt von Hasi ]</font>

Geschrieben

Hi

Danke erstmal.

Aber die Headerdatei <stdafx.h> kennt mein Compiler irgendwie nicht. Die ist auch nicht auf der Festplatte drauf.

Die Manpage habe ich, aber leider i.M. nicht hier auf der Arbeit, sondern nur zu Hause.

Naja, ist ja sowieso bald Schluss hier. Dann schau ich mir das noch mal genauer an.

MfG Crash2001 :)

Geschrieben

<BLOCKQUOTE><font size="1" face="Verdana, Arial, Helvetica, sans-serif">Zitat:</font><HR>Original erstellt von Crash2001:

<STRONG>Aber die Headerdatei <stdafx.h> kennt mein Compiler irgendwie nicht.</STRONG>

Geschrieben

<BLOCKQUOTE><font size="1" face="Verdana, Arial, Helvetica, sans-serif">Zitat:</font><HR>Original erstellt von Crash2001:

<STRONG>Die hab ich auch included. Aber die andere Datei scheint es hier nicht zu geben.</STRONG>

Geschrieben

<BLOCKQUOTE><font size="1" face="Verdana, Arial, Helvetica, sans-serif">Zitat:</font><HR>Original erstellt von MAXIMUS*LEVIUS:

<STRONG>kommentier die stdafx einfach aus. wahrscheinlich benutzt du borland builder oder sowas.</STRONG>

Geschrieben

kleiner tip:

wenn du mehr über einen befehl wissen willst, klick mit der maus darauf und drück danach f1.

die hilfe beim borland ist wirklich super!! da sind auch beispiele drin.

Geschrieben

Hi,

wozu der ganze stress mit print und scan printf und scanf?

#include <iostream.h>

int main ()

{

long a,b,c;

double x,y,z;

cout<<"Bitte drei ganze Zahlen eingeben:\n";

cout<<"Durch Leerzeichenen oder Return getrennt!\n";

cin>>a>>b>>c;

cout<<"\nJetzt drei Fliesskommazahhlen:\n";

cout<<"Durch Leerzeichen oder Return getrennt und Punkt statt Komma!"<<endl;

cin>>x>>y>>z;

cout<<"\nSie Haben folgende Zahlen eingegeben.\n";

cout<<"Zahl 1: "<<a<<endl;

cout<<"Zahl 2: "<<b<<endl;

cout<<"Zahl 3: "<<c<<endl;

cout<<"Zahl 4: "<<x<<endl;

cout<<"Zahl 5: "<<y<<endl;

cout<<"Zahl 6: "<<z<<endl;

return 0;

}

cu

HighFly

<FONT COLOR="#a62a2a" SIZE="1">[ 07. September 2001 12:55: Beitrag 2 mal editiert, zuletzt von HighFly ]</font>

Geschrieben

<BLOCKQUOTE><font size="1" face="Verdana, Arial, Helvetica, sans-serif">Zitat:</font><HR>Original erstellt von HighFly:

<STRONG>Hi,

wozu der ganze stress mit print und scan printf und scanf?

#include <iostream.h>

int main ()

{

long a,b,c;

double x,y,z;

cout<<"Bitte drei ganze Zahlen eingeben:\n";

cout<<"Durch Leerzeichenen oder Return getrennt!\n";

cin>>a>>b>>c;

cout<<"\nJetzt drei Fliesskommazahhlen:\n";

cout<<"Durch Leerzeichen oder Return getrennt und Punkt statt Komma!"<<endl;

cin>>x>>y>>z;

cout<<"\nSie Haben folgende Zahlen eingegeben.\n";

cout<<"Zahl 1: "<<a<<endl;

cout<<"Zahl 2: "<<b<<endl;

cout<<"Zahl 3: "<<c<<endl;

cout<<"Zahl 4: "<<x<<endl;

cout<<"Zahl 5: "<<y<<endl;

cout<<"Zahl 6: "<<z<<endl;

return 0;

}

cu

HighFly</STRONG>

Geschrieben

Hi crash2001 !

<BLOCKQUOTE><font size="1" face="Verdana, Arial, Helvetica, sans-serif">Zitat:</font><HR> Ich benutze aber normalereise printf und scanf, weil ich damit von Anfang an gearbeitet habe und man damit mehr machen kann.

Geschrieben

<BLOCKQUOTE><font size="1" face="Verdana, Arial, Helvetica, sans-serif">Zitat:</font><HR>Original erstellt von captain haddock:

<STRONG>

Meinst du, daß *du* damit mehr machen kannst, weil du dich noch nicht mit istreams/ostreams auseinandergesetzt hast ? Die haben nämlich -als Objekte - einige interessante Eigenschaften, die du mit printf/scanf nicht so einfach nachbilden kannst. Stichworte z.B. Status-Bits, Stream-Umleitung...

Es gibt noch einen anderen guten Grund, sich damit auszukennen: du bist nicht der einzige Programmierer, und mit Sicherheit wird dir inrgendwann Quelltext unterkommen, der diese Sachen verwendet. Dann wär's schon besser, zu verstehen, was gemeint ist :-)

</STRONG>

Geschrieben

@EisenUli:

Da will ich Dir gar nicht widesprechen, ich habe ja auch nicht aufgerufen, die stdio.h zu vergessen. Irgendwie geraten wir zwei beide öfter in Widersprüche, die gar keine sind.

Was ich zum Ausdruck bringen wollte war, daß es nicht schadet, beide Wege zu kennen. Warum, kann man ja nachlesen. Ich habe die manpage zu printf, sprintf, fprintf... auch immer zur Hand, gelle :D

Ich benutze das auch oft, gerade dieser Tage mußte ich feststellen, daß die MFC noch nicht mal einen

'ostream operator<< (CString)'

beinhaltet. Windowsprogrammierung erfordert nach wie vor gestandene C-Programmierer, der auch C++ kennt.

N.B. ich rühme iostream gar nicht. Die ganze Formatierung etc. kann viel, aber ich finde sie zehnmal räudiger als ein schlichtes printf ;-)

Eigentlich wollte ich gerade nachtragen, was nun HighFly schon getan hat. Wenn das kein Argument ist ? Ich hatte ja schon in einem anderen thread zum Thema Leichen im Eingabepuffer geschrieben.

Der Käptn

Geschrieben

<BLOCKQUOTE><font size="1" face="Verdana, Arial, Helvetica, sans-serif">Zitat:</font><HR>Original erstellt von captain haddock:

<STRONG>Irgendwie geraten wir zwei beide öfter in Widersprüche, die gar keine sind.</STRONG>

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...