Du bist nicht eingeloggt.

Login

Pass

Registrieren

Community
Szene & News
Locations
Impressum

Forum / Bits und Bytes

C Umlaute (ASCII)

Motocross_M - 30
Halbprofi (offline)

Dabei seit 01.2006
375 Beiträge

Geschrieben am: 18.04.2010 um 00:08 Uhr

Hi,
ich programmiere seit kurzem C, und mir ist aufgefallen, dass wenn ich bei einer "printf"- Anweisung ein 'ä' eingebe, nur ein komisches Zeichen beim Ausführen des Programms erscheint. Ich habe gelesen, dass es durch eine Zahl, z.B. \228 als Umlaut dargestellt werden kann. Könnt Ihr mir vllt. diese Zahlen oder eine Tabelle für die deutschen Umlaute zu nennen?

Ich hab keine Fußzeile nötig.

SpongeBernd - 34
Champion (offline)

Dabei seit 06.2006
2277 Beiträge

Geschrieben am: 18.04.2010 um 00:12 Uhr

hehe...ich bin ja sonst kein lmgtfy-fan:

http://lmgtfy.com/?q=C+Umlaute+(ASCII)+&l=1
FrankLA - 37
Anfänger (offline)

Dabei seit 12.2006
21 Beiträge
Geschrieben am: 18.04.2010 um 00:16 Uhr

Das hat nichts mit C zu tun, schreibst du Programme, die in der Konsole (DOS) ausgeführt werden?

Dann ist das Problem, das DOS ne adere ASCII Tabelle verwendet als Windows, und deshalb die Umlaute an anderen Stellen sitzen (Der zweite Teil der ASCII Tabelle ist Herstellerspezifisch und da sind nunmal die Umlaute dirin)


Motocross_M - 30
Halbprofi (offline)

Dabei seit 01.2006
375 Beiträge

Geschrieben am: 18.04.2010 um 00:16 Uhr

Also ich hab schon manche (verschiedene) Tabellen gefunden, aber wenn ich z.B. bei deiner Tabelle "\257" eingeb, kommt da dieses Zeichen: >> .

Oder wie muss ich das im Quellcode eingeben?

Ich hab keine Fußzeile nötig.

Motocross_M - 30
Halbprofi (offline)

Dabei seit 01.2006
375 Beiträge

Geschrieben am: 18.04.2010 um 00:17 Uhr

Zitat von FrankLA:

Das hat nichts mit C zu tun, schreibst du Programme, die in der Konsole (DOS) ausgeführt werden?

Dann ist das Problem, das DOS ne adere ASCII Tabelle verwendet als Windows, und deshalb die Umlaute an anderen Stellen sitzen (Der zweite Teil der ASCII Tabelle ist Herstellerspezifisch und da sind nunmal die Umlaute dirin)



Also meine Entwicklungsumgebung ist Code::Blocks, falls du das meinst.
Muss ich dann auf der Hersteller-Website schauen?

Ich hab keine Fußzeile nötig.

SomeHow - 36
Halbprofi (offline)

Dabei seit 05.2005
280 Beiträge
Geschrieben am: 18.04.2010 um 00:25 Uhr

du weist schon das ascii keine umlaute hat?
FrankLA - 37
Anfänger (offline)

Dabei seit 12.2006
21 Beiträge
Geschrieben am: 18.04.2010 um 00:25 Uhr
Zuletzt editiert am: 18.04.2010 um 00:28 Uhr

Ich programmier C++ und da gibt es im Prinzip das selbe Problem.

wenn dein Compiler aus C++ kann versuch mal folgendes Programm:

using namespace std;

#include <iostream>
#include <conio.h>

int main()
{//Variablen
char Test;
int i;
//Ende

for (i=-128; i<=0; i++)
{ Test=i;
cout << i <<": " <<Test << "\t";
}

getch();

}


Das Progrmm gibt dir alle ASCII Sonderzeichen in der Konsole aus




Sorry warn ein paar Syntaxfehler drin

FrankLA - 37
Anfänger (offline)

Dabei seit 12.2006
21 Beiträge
Geschrieben am: 18.04.2010 um 00:32 Uhr

Zitat von SomeHow:

du weist schon das ascii keine umlaute hat?


Das ist schlicht und einfach falsch.
Der Genormte bereicht enthält keine Umlaut, (der 7 bit Code)
ASCII ist aber ein 8 Bit Code und es bleiben damit 128 Plätze für Sonderzeichen und da sind auch die Umlaute drin, halt bei jedem Hersteller wo anders
warlock - 38
Profi (offline)

Dabei seit 11.2005
446 Beiträge

Geschrieben am: 18.04.2010 um 00:33 Uhr

Startmenü->Zubehör->Zeichentabelle

wobe iunter 7 liegts noch im Unterordner
Systemprogramme

da bekommst zu jedem Zeichen den ASCII Code links unten im Fenster angezeigt

Kaffee ohne Koffein ist wie seine Schwester zu lecken. Schmeckt richtig, ist aber falsch.

Motocross_M - 30
Halbprofi (offline)

Dabei seit 01.2006
375 Beiträge

Geschrieben am: 18.04.2010 um 00:49 Uhr

Okay Leute,
ich hab's jetzt mit einem kleinen Programm ausprobiert:

#include <stdio.h>

int main (void)
{
char Test;
int i;
for (i=-128; i<=0; i++)
{ Test=i;
printf ("%c\t=>%d\n", Test, Test);

}
return 0;
}



Danke für den Tipp, kann geclosed werden :D

Ich hab keine Fußzeile nötig.

  [Antwort schreiben]

Forum / Bits und Bytes

(c) 1999 - 2026 team-ulm.de - all rights reserved - hosted by ibTEC Team-Ulm

- Presse - Blog - Historie - Partner - Nutzungsbedingungen - Datenschutzerklärung - Jugendschutz -