Seite 1 von 1

Strukturen mit Zeiger?

Verfasst: 13.07.2006 19:59
von Delle
Hallo,

es existiert eine Struktur sowie Daten darin (hoffe mal es ist so korrekt):

Code: Alles auswählen

Structure Lame

  Config.l
  SampleRate.l
  Mode.b
  Bitrate.d
  Copyright.b
  CRC.b
  Original.b
  Private.b

EndStructure  

Dim Daten.Lame(8)
  
  Daten(0)\Config = BE_CONFIG_MP3
  Daten(0)\SampleRate = 44100
  Daten(0)\Mode = BE_MP3_MODE_STEREO
  Daten(0)\Bitrate = 128
  Daten(0)\Copyright = TRUE
  Daten(0)\CRC = FALSE
  Daten(0)\Original = FALSE
  Daten(0)\Private = FALSE
Vorher waren die Daten in einem Speicherbereich, der Pointer *mem:

CallFunction(0,"Function",*mem,@Samples,@BufferSize,@hbeStream)

Wie verweise ich nun anstatt *mem auf die Struktur? Mittels @Lame ?

Verfasst: 14.07.2006 20:49
von Konne
Ich hoffe dir ist klart dass diese sachen wie False Variablen und keine Konstanten sind. Anosten musst du #False schreiben. Dein Problem habe ich aber nicht richtig verstanden wäre nettt wenn du es nocheinmal fomulieren könntest. Dann kann ich auch bestimmt helfen :allright:

Verfasst: 14.07.2006 20:54
von PMV

Code: Alles auswählen

CallFunction(0,"Function",@Daten(0),@Samples,@BufferSize,@hbeStream)
Dabei ist @Daten(0) ein Zeiger auf das erste Element des Arrays "Daten",
mit @Daten(1) kannste dann auf das zweite Element gehen usw.
Aja, da du dem Array eine Strukture zugewiesen hast, brauchst du in
PB noch nicht mal das @-Zeichen verwenden. Es ginge also auch:

Code: Alles auswählen

CallFunction(0,"Function",Daten(0),@Samples,@BufferSize,@hbeStream)
(gilt für alle Variablen, denen du eine Strukture zugewiesen hast)

MFG PMV