Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

Toa

Alter Hase

Beiträge: 944

Beruf: Research associate

  • Private Nachricht senden

11

28.06.2009, 20:11

Zitat von »"C--"«

Zitat von »"the[V«

oid"]Sprichst du von der alten Eingabeaufforderung? Wie es da aussieht, weiß ich nicht, aber mit der Powershell unter Windows Server 2008 gehts.


Also, ich hab Vista, und da gehts nicht, außer mit C++.NET (Also CLR-Konsolenanwendung)


Kla kann man sich bei der Eingabeaufforderung unter Vista Sonderzeichen ausgeben lassen. Du kannst dich z.b dem ASCII-Zeichensatz bedienen und dir dein eigens cout schreiben dafür einfach den << überladen und die passende Klasse coden die Umlaute wie Ü,Ä,Ö usw rausfiltert und mit dem passenden ASCII-Code ersetzt.

Beweis:

(Link)


mfg Toa[/cpp]

12

28.06.2009, 20:14

Die Eingabeaufforderung kann durchaus sonderzeichen, nur hat sie nen andern Zeichensatz als der Rest von Windows, deswegen ist das, was im Quellcode ein 'ä' ist, in der eingabeaufforderung kein 'ä' mehr.

//EDIT: zu spät. aber du brauchst genaugenommen keine ASCII-codes (reines ASCII enthält keine Diakritika wie 'ä','ö' oder 'ü') sondern die des DOS-Zeichensatzes (such nach ASCII-Zeichensatz mit DOS-erweiterung oder so)

13

28.06.2009, 20:53

habe es immer so gemacht

cout << "St" << char ( ASCIIWERT ) << "ke" << endl ;

14

28.06.2009, 22:01

Schau doch mal hier.

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

15

29.06.2009, 01:11

Wie schon gesagt verwendet das Konsolenfenster die alte DOS Codepage in der der Zeichencode für das ö ein anderer ist als in der normalen Windows Codepage (bei dir vermutlich standardmäßig Windows-1252). Wenn du ein nicht ASCII Zeichen willst (und Umlaute sind nicht in ASCII enthalten) musst du den entsprechenden Zeichencode verwenden:

http://de.wikipedia.org/wiki/Codepage_437

Aus der Tabelle entnehmen wir dass das ö den Hexcode 0x84 hat:

C-/C++-Quelltext

1
2
3
4
5
6
7
8
#include <iostream>

int main()
{
  std::cout << "St\x84rke"<< std::endl;

  return 0;
}

C--

Alter Hase

  • »C--« ist der Autor dieses Themas

Beiträge: 465

Beruf: Schüler

  • Private Nachricht senden

16

29.06.2009, 15:09

Zitat von »"dot"«

Wie schon gesagt verwendet das Konsolenfenster die alte DOS Codepage in der der Zeichencode für das ö ein anderer ist als in der normalen Windows Codepage (bei dir vermutlich standardmäßig Windows-1252). Wenn du ein nicht ASCII Zeichen willst (und Umlaute sind nicht in ASCII enthalten) musst du den entsprechenden Zeichencode verwenden:

http://de.wikipedia.org/wiki/Codepage_437

Aus der Tabelle entnehmen wir dass das ö den Hexcode 0x84 hat:

C-/C++-Quelltext

1
2
3
4
5
6
7
8
#include <iostream>

int main()
{
  std::cout << "St\x84rke"<< std::endl;

  return 0;
}


:D Danke, das Funktioniert :idea: :!:

Nochmal Danke an alle ;)
Ich spreche: C/C++, C++/CLI C#, VBA, VB.NET, Delphi, (HTML, Javascript(bisschen))
------------------------------------------------------------
Hier steht eventuell schon in ein paar Monaten der Link zu meiner Homepage!

return 0;
;)

the[V]oid

Alter Hase

Beiträge: 775

Wohnort: Aachen

  • Private Nachricht senden

17

29.06.2009, 15:31

Naja mit der Windows-Eingabeaufforderung mag das funktionieren, aber z.B. unter Linux (und vielleicht auch in der Powershell unter Vista/Win2k8) funktioniert das so nicht. Wollte ich nur erwähnt haben ;) In meinen Augen wäre es der beste Weg, einzusehen, dass die Eingabeaufforderung von Windows schlicht hoffnungslos veraltet ist, und sie nicht zu benutzen. Das ist wohl der Fluch proprietärer Software. Wäre es Open-Source, wäre es vermutlich schon vor vielen Jahren auf UTF umgestellt worden.
<< an dieser Stelle ist eine Signatur verstorben >>

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

18

29.06.2009, 16:07

Selbsverständlich unterstützt die Windows Konsole unter anderem auch Unicode, man kann die Codepages auf alles mögliche umstellen.
Lediglich die standard Schriftart macht da nicht mit...

C--

Alter Hase

  • »C--« ist der Autor dieses Themas

Beiträge: 465

Beruf: Schüler

  • Private Nachricht senden

19

29.06.2009, 16:13

Zitat von »"dot"«

Selbsverständlich unterstützt die Windows Konsole unter anderem auch Unicode, man kann die Codepages auf alles mögliche umstellen.
Lediglich die standard Schriftart macht da nicht mit...


Wie kann man denn Codepage umstellen(gibts da nicht nen Befehl irgendwie Codepage (***))? :?: :?:
Ich spreche: C/C++, C++/CLI C#, VBA, VB.NET, Delphi, (HTML, Javascript(bisschen))
------------------------------------------------------------
Hier steht eventuell schon in ein paar Monaten der Link zu meiner Homepage!

return 0;
;)

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

20

29.06.2009, 21:45

http://msdn.microsoft.com/en-us/library/ms686036.aspx

Werbeanzeige