Longint immer vier byte?
-
- Lazarusforum e. V.
- Beiträge: 7192
- Registriert: So 19. Nov 2006, 12:06
- OS, Lazarus, FPC: Linux Mint 19.3
- CPU-Target: AMD
- Wohnort: Oldenburg(Oldenburg)
Longint immer vier byte?
Hallo,
Ich lese gerade hier
http://www.dsdt.info/tutorials/streams/?page=2" onclick="window.open(this.href);return false;
das ein longint immer vier byte speichert.
meine Frage ist jetzt: sind es immer vier byte?
egal wie hoch die zahl ist ob ich nun
33 speichere oder 100005 es sind immer vier byte ?
Ich lese gerade hier
http://www.dsdt.info/tutorials/streams/?page=2" onclick="window.open(this.href);return false;
das ein longint immer vier byte speichert.
meine Frage ist jetzt: sind es immer vier byte?
egal wie hoch die zahl ist ob ich nun
33 speichere oder 100005 es sind immer vier byte ?
MFG
Michael Springwald
Michael Springwald
-
- Beiträge: 6079
- Registriert: Do 21. Sep 2006, 07:51
- OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
- CPU-Target: AVR,ARM,x86(-64)
- Wohnort: Dessau
- Kontaktdaten:
in der Reference guide steht auch nochmal genau drin wielang jeder typ ist ftp://ftp.freepascal.org/pub/fpc/docs-pdf/ref.pdf
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/
-
- Lazarusforum e. V.
- Beiträge: 7192
- Registriert: So 19. Nov 2006, 12:06
- OS, Lazarus, FPC: Linux Mint 19.3
- CPU-Target: AMD
- Wohnort: Oldenburg(Oldenburg)
vielen dank, ist leider in englisch !
die Größe kann ich ja auch mit SizeOf(Datentyp) raußbekommen ! was mich nur wunder ist das es egal ist wie lang bzw. wie groß eine zahl ist, es wird immer 4 byte abgespeichert... wie ist das möglich ?
PS:
bisher habe ich mich dafür nicht Intrisiert aber jetzt schon !
die Größe kann ich ja auch mit SizeOf(Datentyp) raußbekommen ! was mich nur wunder ist das es egal ist wie lang bzw. wie groß eine zahl ist, es wird immer 4 byte abgespeichert... wie ist das möglich ?
PS:
bisher habe ich mich dafür nicht Intrisiert aber jetzt schon !
MFG
Michael Springwald
Michael Springwald
Wie wäre es anders möglich?pluto hat geschrieben:vielen dank, ist leider in englisch !
die Größe kann ich ja auch mit SizeOf(Datentyp) raußbekommen ! was mich nur wunder ist das es egal ist wie lang bzw. wie groß eine zahl ist, es wird immer 4 byte abgespeichert... wie ist das möglich?

Longint ist Longint (4 Byte)
Du kannst ja einen anderen Typ nehmen: z.B. Shortint oder Byte
Aber es ist natürlich nach oben hin nicht egal, wie Gross deine Zahl ist.
Sie muss schon Platz haben in dem Typen.
Vielleicht hilft das: http://wiki.freepascal.org/Integer/de" onclick="window.open(this.href);return false;
Wie gesagt, dann nimm halt einen anderen Typen, wenn du weisst, dass deine Zahl nicht grösser wird als was darin Platz hat.pluto hat geschrieben:vielen dank für erste nur ich verstehe immer noch nicht ganz warum für eine zahl die 2 stellen hat immer 4 bit verwendet wird !
z.b. bei zwei stellen könnte der speicher platzt doch deutlich kleiner werden, als wenn ich 8 stellen habe !!!
-
- Beiträge: 6079
- Registriert: Do 21. Sep 2006, 07:51
- OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
- CPU-Target: AVR,ARM,x86(-64)
- Wohnort: Dessau
- Kontaktdaten:
und wer soll das verwalten ? wie lang eine zahl istvielen dank für erste nur ich verstehe immer noch nicht ganz warum für eine zahl die 2 stellen hat immer 4 bit verwendet wird !
z.b. bei zwei stellen könnte der speicher platzt doch deutlich kleiner werden, als wenn ich 8 stellen habe !!!
dazu bräuchte man für jede variable ein dynamisch verwaltetes stück ram das ist aufwand ohne ende und macht dein programm mindestens um faktor 5 langsamer
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/