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.
|
|