Frage Ausgabe



  • Hallo an allen.Ich habe folgendes Problem.Ich habe eine Funtkion geschrieben und ich will ganz einfach die Werte die ich der Funtkion übergebe aus Klarheitsgründen zu sehen was für Werte ich übergeben habe(bei der Ausgabe)
    Egal was für Werte ich eingebe bekomme ich immer das Gleiche raus ausser der Rückgabewert der Funktion.Hier ist der Code

    int area1,x_1,x_2,y_1,y_2;//Fuer Area Algorithmus
    int level;//Fuer Area Algorithmus

    case 7: puts("Geben sie die Koordinaten ein(x1,x2,y1,y2) und ObjVal(GrauLevel 0-255) ein:");
    scanf("%d",&x_1);//Ich habe es versucht auch bei einer scanf(%d%d%d..usw.)
    scanf("%d",&x_2);
    scanf("%d",&y_1);
    scanf("%d",&y_2)
    scanf("%d",&level);
    fflush(stdin);
    area(&In,x_1,x_2,y_1,y_2,(unsigned char)level);//Werte an Fkt.übergeben
    printf("Das bild an der Koordinaten x1=%d x2=%d y1=%d y2=%d und");
    printf("mit Grau-Level %d hat eine Flaeche von Area= %d\n",x_1,x_2,y_1,y_2,level,area);

    Die Funtkion area hat Rückgabewert integer!
    Die Ergebnisse die ich immer bekomme sind :

    Ergebnis 1:

    Geben sie die Koordinaten ein(x1,x2,y1,y2) und ObjVal(GrauLevel 0-255) ein:
    6
    7
    8
    9
    200
    Das bild an der Koordinaten x1=-1 x2=1243388 y1=2147348480 y2=-858993460 undmit
    Grau-Level 6 hat eine Flaeche von Area= 7
    Press any key to continue

    Ergebnis 2:
    Geben sie die Koordinaten ein(x1,x2,y1,y2) und ObjVal(GrauLevel 0-255) ein:
    1
    2
    3
    4
    200
    Das bild an der Koordinaten x1=-1 x2=1243388 y1=2147348480 y2=-858993460 undmit
    Grau-Level 1 hat eine Flaeche von Area= 2
    Press any key to continue

    Woaran kann es liegen ?Ich meine ich will in dem Ergebnis sehen dass ich diese bestimmte x1,x2,y1,y2 eingegeben habe!Es ist eigentlich trivial einfach aber ich bekomme es nicht raus!Ist es vielleicht Speicher Problem?Mit oder ohne fflush() spielt es keine Rolle
    Ich bedanke mich und freue mich auf ihre Antworten
    kilomat



  • printf("Das bild an der Koordinaten x1=%d x2=%d y1=%d y2=%d und");
    

    du solltest ihm an der stelle vielleicht übergeben was es ausgeben soll

    printf("Das bild an der Koordinaten x1=%d x2=%d y1=%d y2=%d und",x_1,x_2,y_1,y_2);
    

    selbiges hier

    printf("mit Grau-Level %d hat eine Flaeche von Area= %d\n",x_1,x_2,y_1,y_2,level,area);
    

    ihm da nur area zu üebrgeben ist nicht sonderlich sinnvoll



  • Danke es hat funktioniert aber was meinst du dass es nicht sinnvol ist ?Wie meinst du das?
    Danke



  • meinst du dass ein Integer definieren sool gleich der Funtkion setzen und dann
    übergeben?Das habe ich auch gemachrt aber ich hatte rumprobiert ob es daran lag!

    int area1;

    area1=area(.......);
    printf("%d",area1);


Anmelden zum Antworten