[C++]scanf() will nicht--- ich zu blöd ?

Dieses Thema im Forum "Programmierung & Entwicklung" wurde erstellt von chef_kochtopf, 18. August 2005 .

Schlagworte:
  1. 18. August 2005
    Ich hab mal folgendes gemacht:

    int i;
    int e;
    printf("Wert 1 : ");
    scanf("%d",&i);
    printf("Wert 2 : ");
    scanf("%d",&e);
    printf("Wert 1: %d\n",i);
    printf("Wert 2: %e\n",e);

    ziel ist das wert 1 und 2 asugegebenwerden genau wie sie es eingegeben wurden... leider funzt das nur bei "%i"...

    wenn ich beide stellen 1 als wert eingeb kommt bei %i 1 raus
    aber bei %e wird das 1.622258e-307
    was hab ich falsch gemacht...

    plz helft mir...dange schonmal
     
  2. 18. August 2005
    wenn du ein float einlesen willst solltest du es auch deklarieren.
     
  3. 18. August 2005
    wieso nimmst dafür nicht

    cin und cout ?

    speicherst den wert evtl. no inner variable und gibz in an wieder über cout aus ?

    was nimmst für nen compiler?
     
  4. 18. August 2005
    @empty ich mach das alles mit Dev-C++

    bin leider noch n totaler -mega-anfänger... darum hab ich 0 plan was cin oder count sind... unter count kann ich mir was vorstellen... aber wasset genau is weis ich nich...

    @xodox wenn ich float e; dazu eingebn sagt mir der debugger

    21 I:\devc++\shit\first1\main.cpp conflicting declaration 'float e'

    ich hab für i ja auch keinen float benutzt und der funzt wunderbar...


    EDIT:---------------------------------------


    ich hab was haltet ihr davon wenn ichs so mach :

    #include <stdio.h>

    int main(void) {
    char a,b,c;
    printf("1. Wert : ");
    do {scanf("%c",&a);} while ( getchar() != '\n' );
    printf("2. Wert : ");
    do {scanf("%c",&b);} while ( getchar() != '\n' );
    printf("3. Wert : ");
    do {scanf("%c",&c);} while ( getchar() != '\n' );
    printf("%c %c %c\n",a,b,c);
    return 0;
    }


    p.s: hat wer von euch evt lust+zeit mir n bisrl zu helfen beim c++ lernen ?
     
  5. 18. August 2005
    1. das ist kein c++ sondern c
    2.

    scanf("%d",&i);
    Mit %d liest man Integer ein => int i

    scanf("%e",&e);
    Mit %d bzw %f liest man Floating points ein => float e

    3. kann daran liegen dass die Datei falsch heißt.
    Speicher sie unter irgendwas.c und nicht .cpp (devc++ macht da einen Unterschied)
     
  6. 18. August 2005
    k... sorry hab nich gewusst dass das c war... habs aus ner seite geklaut...
     
  7. 20. August 2005
    ich kann dir nur nahe legen, mal ein paar tutorials ausm netz durchzuarbeiten. dadurch lernt man am schnellsten. und wenn du schon c++ programmierst, dann solltest du wirklich cin und cout verwenden.

    Code:
    #include <stdio.h>
    
    main() { //int main(void) kannste dir sparen
    
    char a, b, c;
    cout<<"1. Wert : "; cin>>a //warum 1. Wert? ist ein buchstabe ein wert?
    cout<<"2. Wert : "; cin>>b
    cout<<"3. Wert : "; cin>>c
    
    printf("%c%c%c\n", a,b,c);
    
    }
    
    so sollte es gehen

    mfg
    fake
     
  8. 20. August 2005
    Er will ja verschiedenen Typen einlesen und ausgeben und nicht nur Zeichenketten ( char ).

    Technisch JA aber laut Codingvorschrift NEIN. (man sollte auf seinen Stiel)
     
  9. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.