Seite 1 von 1

Sonderzeichern?

Verfasst: Mi Jan 27, 2010 12:03 pm
von dragonfloez
Hallo Leute,
ratet mal wer wieder was nachfragen muß, genau ich!!

Also wie ich schon mehrfach gesehen habe:

printf ("Hallo du da\n"); mir gehts dabei um das \n. Wiso macht das bei mir nie in meinem Programm einen Absatz sondern es steht mit der Texxtausgabe auf dem Bildschirm.

Was läuft da schief?

Und wie kann man Ü oder Ö schreiben, da kommt bei mit immer ³ raus?

Hilfe erbeten!!
Vielen Dank

Re: Sonderzeichern?

Verfasst: Mi Jan 27, 2010 1:07 pm
von cloidnerux
Wiso macht das bei mir nie in meinem Programm einen Absatz sondern es steht mit der Texxtausgabe auf dem Bildschirm.
Wieso sollte das Programm abstuertzen? \n steht fuer eine neue Zeile in der Konsole.

Re: Sonderzeichern?

Verfasst: Mi Jan 27, 2010 1:18 pm
von dragonfloez
Hallo cloidnerux,
ich glaube da haste dich verlehsen. Ich habe Absatz, nicht Absturz geschrieben. ;)
Aber erstmal danke für deine Antwort.

Re: Sonderzeichern?

Verfasst: Mi Jan 27, 2010 1:24 pm
von Xin
dragonfloez hat geschrieben:Also wie ich schon mehrfach gesehen habe:
printf ("Hallo du da\n"); mir gehts dabei um das \n. Wiso macht das bei mir nie in meinem Programm einen Absatz sondern es steht mit der Texxtausgabe auf dem Bildschirm.

Was läuft da schief?
Gute Frage, bitte poste das kürzeste Testprogramm, was bei Dir derart merkwürdig reagiert.
dragonfloez hat geschrieben:Und wie kann man Ü oder Ö schreiben, da kommt bei mit immer ³ raus?
Das ist abhängig von der Codepage. Wenn Du Deinen Quelltext in einer anderen Codepage schreibst, als die Console läuft, dann ist das Ü vielleicht das Zeichen 200 und in der Codepage der Konsole ist die 200 das Zeichen ³.
Nur die ersten 127 Zeichen sind grundsätzlich gleich. Für andere Zeichen muss die Codepage übereinstimmen.
Die Umlaute liegen über Zeichen 127.

Re: Sonderzeichern?

Verfasst: Mi Jan 27, 2010 2:13 pm
von dragonfloez
Hallo

Code: Alles auswählen

#include <stdio.h>

int main ()

{
printf ("Hallo wie gehts\n");

printf ("Heute ist ein schöner Tag\n");

printf ("So ein Käse jetzt funktioniert das auch noch\n");


return 0;
}

Gestern hat es noch nicht funktioniert. Merkwürdig. Ich hatte es in meinem Taschenrechnerprgramm ausprobiert und da hat es nicht getan. Vielleicht war gestern nicht mein Tag. :oops:


HALT STOP

Wieso funktioniert es da nicht mehr????

Code: Alles auswählen

printf ("1 Druecken um zu addieren\n: ");
oder

Code: Alles auswählen

printf ("1 Druecken um zu addieren: \n");
Nochmal wegen den Umlauten, wo kann ich bei CODE::BLOCKS nachsehen was ich z.b für Ü eingeben muß?


Vielen Dank

Re: Sonderzeichern?

Verfasst: Mi Jan 27, 2010 3:24 pm
von Xin
Bitte gib mir ein komplettes Programm, das ich so kopieren kann, um es auszuprobieren.
Am besten dass das komplette Programm, das funktioniert, vorher gerufen wurde und wenn man sofort danach das fehlerhafte Programm ruft, dass man sehen kann, dass es nun nicht mehr geht.

Re: Sonderzeichern?

Verfasst: Mi Jan 27, 2010 4:11 pm
von Kerli
Das mit den Umlauten ist etwas umständlich, aber es geht:

http://www.c-plusplus.de/forum/viewtopi ... 39326.html

Re: Sonderzeichern?

Verfasst: Mi Jan 27, 2010 4:15 pm
von dragonfloez
Hallo,
das Programm:

Code: Alles auswählen

#include <stdio.h>
#define mwst(a)((a*19)/100)

int main ()
{
int zahl1=0, zahl9=1;
float zahl2=0, zahl3=0;
double zahl, zahl7, zahl8; /*Teilen*/



while (zahl9==1)
{

printf ("1 Druecken um zu addieren: ");
printf ("2 Druecken um zu subtrahieren: ");
printf ("3 Drücken un zu multiplitzieren: ");
printf ("4 Drücken um zu dividieren: ");
printf ("5 Drücken um die Mehrwertseuer zu berechnen: ");
printf ("6 Drücken um  zu Beenden: ");


printf ("Taetigen Sie Ihre Eingabe: ");
scanf ("%d", &zahl1);

switch (zahl1)
{
    case 1: printf ("Geben Sie die erste Zahl ein: ");
            scanf ("%f", &zahl2);
            printf ("Geben Sie die zweite Zahl ein: ");
            scanf ("%f", &zahl3);
            printf ("Das Ergebnis ist %f\n", zahl2+zahl3);
            break;

    case 2: printf ("Geben Sie die erste Zahl ein: ");
            scanf ("%f", &zahl2);
            printf ("Geben Sie die zweite Zahl ein: ");
            scanf ("%f", &zahl3);
            printf ("Das Ergebnis ist %f\n", zahl2-zahl3);
            break;

    case 3: printf ("Geben Sie die erste Zahl ein: ");
            scanf ("%f", &zahl2);
            printf ("Geben Sie die zweite Zahl ein: ");
            scanf ("%f", &zahl3);
            printf ("Das Ergebnis ist %f\n", zahl2*zahl3);
            break;

    case 4: printf ("Geben Sie die erste Zahl ein: ");
            scanf ("%lf", &zahl7);
            printf ("Geben Sie die zweite Zahl ein: ");
            scanf ("%lf", &zahl8);
            printf ("Das Ergebnis ist %lf\n", zahl7/zahl8);
            break;

    case 5: printf ("Geben Sie denn Betrag in Euro ein: ");
            scanf ("%lf", &zahl);
            printf ("Die Mehrwertsteuer beflaeuft sich auf %lf\n", mwst(zahl));


    case 6: printf ("Beenden: ");
            zahl9 = 0;
            break;

    default: printf("Wählen Sie zwischen 1,2,3,4,5,6");
}
}
return 0;
}
Bin mal gespannt was dabei rauskommt :D habe schon die oben aufgeführten Varianten ausprobiert. Hat nichts gebracht. Hilfe?

Und danke Kerli für den Tipp!!

Zu den Umlauten. Hab in einem Programm "Tätigen" geschrieben in der Konsole wurde daraus "Tötigen". Meine Frage noch dazu, gibt es z.b für Ü nicht auch ein anderer Buchstabe ??