Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Conversión tipos de datos de C++ para Delphi (https://www.clubdelphi.com/foros/showthread.php?t=53549)

Guillermo80 23-02-2008 15:23:06

Conversión tipos de datos de C++ para Delphi
 
Hola, estoy empezando a traducir un código de c a delphi. Tanto el de c como el de delphi disponen de su propia librería pero hay un par de cosas que no consigo adaptar:

En c tengo la siguiente declaración:


static FLAC__int32 pcm[2000];
static FLAC__int32 *pcm_[2] = { pcm, pcm+2000};

En mi librería de delphi tengo (en c tendría una equivalente):


FLAC__int32 = Integer;
PFLAC__int32 = ^FLAC__int32;
FLACIntBuf = array[0..0] of FLAC__int32;
PFLACIntBuf = ^FLACIntBuf;

El problema es que no me sale la traducción para declararme en mi programa lo mismo que en c, no sé cómo inicializar esos arrays, bien me salen que son tipos incompatibles o que me excedo de los índices del array, y esa definición en la librería de delphi de array[0..0] tampoco sé seguro si lo que quiere decir es un aray de longitud indeterminada o qué es :confused:.

Gracias de antemano y un saludo.

ixMike 23-02-2008 20:38:48

Cita:

Empezado por Guillermo80 (Mensaje 268112)
array[0..0]

Eso es un array de longitud 0, es decir, en un principio contiene 0 (cero) elementos. Sirve para hacer arrays dinámicos, modificas su tamaño con GetMem y ReallocMem, y lo liberas de memoria con FreeMem. Fue aquí donde lo aprendí: http://www.q3.nu/trucomania/truco.cgi?18&esp

En cuanto a lo otro, lo siento, no puedo ayudarte. :(


Salu2.

Guillermo80 23-02-2008 21:25:28

gran ayuda
 
Gracias ixMike, al menos me ha servido tu ayuda para aprender a usar arrays dinámicos. Intuía que podría ser eso, pero ignoraba cómo dimensionarlos. De todas formas creo que gracias a eso voy a poder resolver parte de lo otro que comentaba, ya que uno de los errores que me daban era que mi array estaba definido fuera de los índices.

Un saludo ¡¡


La franja horaria es GMT +2. Ahora son las 06:03:33.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi