Strukturen

Anfängerfragen zum Programmieren mit PureBasic.
Bobo220673
Beiträge: 21
Registriert: 29.04.2010 22:50

Strukturen

Beitrag von Bobo220673 »

Hallo!
Ich versuche hier einen C Code nach PB zu convertieren, habe aber Probs bei den Strukturen da ich noch nie damit gearbeitet habe. Könnte mir vieleicht jemand helfen das nach PB umzusetzen? Den Rest könnte ich dann ableiten...

Code: Alles auswählen

typedef struct
{
  short sine_table[512];
  Uint8 index_add;
  Uint8 effect;
} SINE_EFFECT;

#define MAX_EFFECTS 12

struct 
{
  SINE_EFFECT sine_effects[MAX_EFFECTS];
  Uint8 current_effect;
} EFFECTS;
Benutzeravatar
NicTheQuick
Ein Admin
Beiträge: 8679
Registriert: 29.08.2004 20:20
Computerausstattung: Ryzen 7 5800X, 32 GB DDR4-3200
Ubuntu 22.04.3 LTS
GeForce RTX 3080 Ti
Wohnort: Saarbrücken
Kontaktdaten:

Re: Strukturen

Beitrag von NicTheQuick »

Ich würde es mal so versuchen:

Code: Alles auswählen

Structure SINE_EFFECT
	sine_table.w[512]
	index_add.a
	effect.a
EndStructure

#MAX_EFFECTS = 12

Structure EFFECTS
	sine_effects.SINE_EFFECT[#MAX_EFFECTS]
	current_effect.a
EndStructure
Bild
Bobo220673
Beiträge: 21
Registriert: 29.04.2010 22:50

Re: Strukturen

Beitrag von Bobo220673 »

Super, danke.
Eine kleine Frage habe ich aber noch, wie spreche ich das unter PB jetzt an? Im C Quelltext schaut das so aus :

Code: Alles auswählen

EFFECTS.current_effect = 0;
bzw.

Code: Alles auswählen

EFFECTS.sine_effects[0].sine_table[i] = (short)((sin(rad) * 8.0));
aus.
Benutzeravatar
NicTheQuick
Ein Admin
Beiträge: 8679
Registriert: 29.08.2004 20:20
Computerausstattung: Ryzen 7 5800X, 32 GB DDR4-3200
Ubuntu 22.04.3 LTS
GeForce RTX 3080 Ti
Wohnort: Saarbrücken
Kontaktdaten:

Re: Strukturen

Beitrag von NicTheQuick »

Erstmal die Variable deklarieren, wir haben nämlich bisher nur eine Struktur. Der Rest ist dann einfach:

Code: Alles auswählen

Define EFFECTS. EFFECTS
EFFECTS.sine_effects[0].sine_table[i] = Sin(rad) * 8.0
Bild
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: Strukturen

Beitrag von ts-soft »

@NicTheQuick

Backslash, nicht punkt :mrgreen:
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
NicTheQuick
Ein Admin
Beiträge: 8679
Registriert: 29.08.2004 20:20
Computerausstattung: Ryzen 7 5800X, 32 GB DDR4-3200
Ubuntu 22.04.3 LTS
GeForce RTX 3080 Ti
Wohnort: Saarbrücken
Kontaktdaten:

Re: Strukturen

Beitrag von NicTheQuick »

Haha, ja. Hab das eben beim Kebapessen schnell ins Handy getippt. War mir schon vorher klar, dass wieder was verkehrt sein wird. :lol:
Bild
Antworten