AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

"0x0008" Was für ein Typ???

Ein Thema von dadu · begonnen am 30. Aug 2005 · letzter Beitrag vom 31. Aug 2005
 
Robert Marquardt
(Gast)

n/a Beiträge
 
#7

Re: "0x0008" Was für ein Typ???

  Alt 31. Aug 2005, 08:53
Eine vorlaufende Null ist in C die Schreibweise fuer eine Oktalzahl. 017 ist also dezimal 15.
Das stammt noch aus der Zeit als die Rechner Schalter aussen hatten. Diese waren in Dreiergruppen fuer die binaere Eingabe von Oktalziffern gedacht.
Bei dem originalen K&R C waren sogar die Oktalziffern 8 und 9 erlaubt (09 = 011 = 9 dezimal). Das hat man dann bei ANSI C beseitigt.
Damit man Hexzahlen benutzen kann musste eine neue Schreibweise eingefuehrt werden. Es wurde das x bzw. X hinzugefuegt.

Der Grund ist ein besonders einfacher Parser. Kommt eine Ziffer so beginnt eine Zahl. Ist es eine 0 so beginnt eine Oktalzahl, sonst eine Dezimalzahl. Kommt dann ein x so ist es eine Hexzahl.

Alles in allem wurde hier einfach eine Funktion zum Parsen einer Dezimalzahl zweimal moeglichst primitiv erweitert und das Resultat als zur Sprache gehoerig erklaert.
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:02 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz