feste Größe einer .Integer-Struktur?

Für allgemeine Fragen zur Programmierung mit PureBasic.
SBond
Beiträge: 266
Registriert: 22.05.2013 20:35

feste Größe einer .Integer-Struktur?

Beitrag von SBond »

Hallo Leute,

man kann ja problemlos eine Variable wie folgt verarbeiten:

Code: Alles auswählen

Define Var.i

Procedure.i MyFunction (*Data.integer)
   *Data\i = 100
EndProcedure

Var = 0
MyFunction(@Var)
Debug Var

Wie groß ist der verwendete Speicher dieser ".integer"-Struktur? Immer 4 Byte? ...oder ändert sich die Größe auf 8 Byte bei einem 64-Bit Compiler? Die Größe einer normalen Integer-Variable ändert sich in PB je nach Architektur (4 Byte bei x86 und 8 Byte bei x64).

Ich möchte nur nicht, dass ich später irgendwelche Speicherzugriffsfehler bekomme. :|

viele Grüße,
SBond
41 6c 73 6f 20 77 65 6e 6e 20 64 75 20 73 6f 20 76 69 65 6c 20 4c 61 6e 67 65 77 65 69 6c 65 20 68 61 73 74 2c 20 64 61 6e 6e 20 6b 61 6e 6e 73 74 20 64 75 20 61 75 63 68 20 67 6c 65 69 63 68 20 7a 75 20 6d 69 72 20 6b 6f 6d 6d 65 6e 20 75 6e 64 20 61 62 77 61 73 63 68 65 6e 2e

:D
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Re: feste Größe einer .Integer-Struktur?

Beitrag von ts-soft »

Sie ändert sich auf 8 byte im 64-Bit compiler!
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
edel
Beiträge: 3667
Registriert: 28.07.2005 12:39
Computerausstattung: GameBoy
Kontaktdaten:

Re: feste Größe einer .Integer-Struktur?

Beitrag von edel »

Unter 32 Bit ist ein Integer 4 Byte gross und unter 64 bit ganze 8.

Code: Alles auswählen

Var.i = 0

Debug SizeOf(Var)
SBond
Beiträge: 266
Registriert: 22.05.2013 20:35

Re: feste Größe einer .Integer-Struktur?

Beitrag von SBond »

...ahh...

habe es gerade im Strukturverzeichnis gefunden.
Structure Integer
i.i
EndStructure
...somit ist es Architekturunabhängig :mrgreen:

viele Grüße,
SBond

Edit: danke euch :), Ich war zu langsam <)
41 6c 73 6f 20 77 65 6e 6e 20 64 75 20 73 6f 20 76 69 65 6c 20 4c 61 6e 67 65 77 65 69 6c 65 20 68 61 73 74 2c 20 64 61 6e 6e 20 6b 61 6e 6e 73 74 20 64 75 20 61 75 63 68 20 67 6c 65 69 63 68 20 7a 75 20 6d 69 72 20 6b 6f 6d 6d 65 6e 20 75 6e 64 20 61 62 77 61 73 63 68 65 6e 2e

:D
Antworten