Bennu Game Development

Foros en Español => Extensiones => Topic started by: Phoenix on June 19, 2009, 09:47:00 AM

Title: Bases de datos
Post by: Phoenix on June 19, 2009, 09:47:00 AM
Hola! Soy relativamente nuevo en Bennu, sabeis si existe alguna libreria para el manejo de bases de datos? en Bennu?

Muchas gracias.
Title: Re: Bases de datos
Post by: osk on June 19, 2009, 09:55:42 AM
En Fenix había hace mucho tiempo una librería para acceder a MySql, si mal no recuerdo. A lo mejor buscando en fenixworld la encuentras...pero dudo que funcione hoy en día.
Pero la verdad es que lo que propones es muy interesante.
Title: Re: Bases de datos
Post by: syous on June 19, 2009, 10:17:40 AM
 ;D si existe en fenix un par de librerias,  para bennu aun no
Title: Re: Bases de datos
Post by: Phoenix on June 19, 2009, 10:38:28 AM
:( , una libreria de estas agilizaria bastante la gestion de grandes recopilaciones de datos a usar por un programa. En fin, tendre que hacer lo que me traigo entre manos de otra manera, gracias por responder.
Title: Re: Bases de datos
Post by: osk on June 19, 2009, 10:50:24 AM
Aprovechando el tema...¿sería muy complicado hacer un módulo de acceso a Sqlite?
http://www.sqlite.org/quickstart.html
http://www.sqlite.org/cintro.html
http://www.sqlite.org/c3ref/intro.html
Title: Re: Bases de datos
Post by: SplinterGU on June 19, 2009, 02:39:00 PM
Aca sandman y sus compañeros tienen un modulo de acceso a sqlite en su proyecto de colegiatura...

http://code.google.com/p/molapse/

Title: Re: Bases de datos
Post by: osk on June 19, 2009, 03:06:26 PM
Pero por lo que he visto, este proyecto es mucho más complejo.
Yo a lo que me refería era a tener un módulo de Bennu que implementara sencillas funciones de acceso y manipulación de datos que serían no más que wrappers de la api para c que los de sqlite ofrecen.
Title: Re: Bases de datos
Post by: SplinterGU on June 19, 2009, 03:12:21 PM
No es que el proyecto sea complejo sino que incorpora algunos modulos, entre ellos hay uno de acceso a base de datos.

Directories

   * svn
         o branches
         o tags
         o trunk
               + dev
                     # bin
                           * gui_data
                           * import
                     # bin_pak
                     # codeblocks.win32
                     # diagram
                     # lib
                           * sdl_2005
                           * sdl_mingw
                     # src
                           * mod_cfg
                           * mod_ren
                           * mod_sql
                           * shared
                     # visualstudio.win32
                           * mod_cfg
                           * mod_ren
                           * mod_sql
                                 o release
               + docs
                     # reportLoading...
                     # screenshotsLoading...
               + proto
                     # binLoading...
                     # codeblocks.linuxLoading...
                     # codeblocks.win32Loading...
                     # depsLoading...
                     # docLoading...
                     # libLoading...
                     # projectLoading...
                     # srcLoading...
               + vendor
                     # MemoryModuleLoading...
                     # SDLLoading...
                     # bennuLoading...
                     # bsguiLoading...
                     # physfsLoading...
                     # tinyxmlLoading...
                     # zlibLoading...
         o vendor
               + SDL
               + SQLite
               + bennu
               + bsgui
                     # includeLoading...
               + freetype
                     # buildsLoading...
                     # develLoading...
                     # includeLoading...
                     # srcLoading...
               + ftgl-2.1.3~rc5
                     # msvcLoading...
                     # srcLoading...
               + glew
                     # binLoading...
                     # buildLoading...
                     # configLoading...
                     # docLoading...
                     # includeLoading...
                     # srcLoading...
               + tinyxml
               + zlib
         o wiki

Title: Re: Bases de datos
Post by: syous on June 19, 2009, 03:23:22 PM
 ;D bases de datos el lo ultimo que me falta para estar en bennu only  es la parte que me falta de migrar en el proyecto sigo a un con fenix 92a en algunas cosas
Title: Re: Bases de datos
Post by: osk on June 19, 2009, 04:06:37 PM
Acabo de ver que hay wrappers de la Api de Sqlite para (casi) todos los millones de lenguajes que hay:
http://www.sqlite.org/cvstrac/wiki?p=SqliteWrappers
Title: Re: Bases de datos
Post by: l1nk3rn3l on June 19, 2009, 05:31:47 PM
SQLIte
si hace tiempo en el bennupack se incluyo , bajatelo!!!!

;D

y en el fenixpack ya un poco devaluado tambien hay para ODBC
Title: Re: Bases de datos
Post by: osk on June 19, 2009, 05:44:48 PM
Gracias! aunque el BennuPack sólo funciona para Windows...miraré a ver si el sqlite que lleva se puede abstraer de este detalle.

Lo he probado con Wine y está muy bien!! Con el código de la Api y el wrapper que habéis hecho no creo que sea muy difícil hacerlo multiplataforma...

Oye, tenéis un montón de dlls allí metidas, qué guay!!
Title: Re: Bases de datos
Post by: Phoenix on June 19, 2009, 06:03:10 PM
voy a echarle un vistazo yo tambien, que de verdad me hace falta  ;)
Title: Re: Bases de datos
Post by: osk on June 19, 2009, 06:30:18 PM
Vaya. Lo estoy probando en Wine y no hago bien las cosas.
En compilar test01.prg primero me decía que sql.h no encontraba sql.dll, cuando están en la misma carpeta. He puesto la ruta absoluta y entonces va, pero me salta un error de: "Undefined procedure ("SQLITE3_OPEN")".
Y no sé qué tocar.
Title: Re: Bases de datos
Post by: SplinterGU on June 19, 2009, 06:46:43 PM
LD_LIBRARY_PATH
investiga eso...
Title: Re: Bases de datos
Post by: Phoenix on June 29, 2009, 08:54:16 AM
Bien estoy probando la sqlite3 y funciona bastante bien para lo que necesito. El unico problema es que ahora cuando quiero hacer una consulta Insert into, Bennu me da error en ejecución. La tabla de la base de datos se actualiza perfectamente, asi que dudo que el problema venga de la libreria.

El programa hace algo asi:

function evento()
Begin
   
     if(rand(1,100)>50)
          SQLITE3_OPENTABLE(db,"SELECT Nombre FROM Jugadores Where ID="+2,sqlRes);
          if(sqlRes.rows>0)
              NombreJugador=SQLITE3_GETFIELDValue(sqlRes,0);
              SQLITE3_CLOSETABLE(sqlRes);
              SQLITE3_EXEC(db,"BEGIN TRANSACTION");
              SQLITE3_EXEC(db,"INSERT INTO NombresDeJugadores VALUES("'+NombreJugador+"')");
              SQLITE3_EXEC(db,"COMMIT");
          end
     end
     return 1;
end

El error que me da es el siguiente:

      Assertion failed: code < string_allocated && code >= 0, file strings.c, line 264

      This application has requested the Runtime to terminate it in an unusual way.
      Please contact the application's support team for more information.        


Alguien me puede dar una explicación a esto? Gracias! :)    
Title: Re: Bases de datos
Post by: syous on June 29, 2009, 09:51:56 AM
 ;D yo necesito Mysql para Bennu para el migrado al 100%
Title: Re: Bases de datos
Post by: SplinterGU on June 29, 2009, 11:05:08 AM
pareciera que la dll no hace el uso correcto de string_discard and string_use
Title: Re: Bases de datos
Post by: splinter_work on June 29, 2009, 04:55:56 PM
Que dll estas usando? donde esta el codigo?
Title: Re: Bases de datos
Post by: osk on June 29, 2009, 05:26:40 PM
Supongo que la que viene en el BennuPack. Viene compilada para Windows y también el código fuente. Yo estoy intentando compilarla para Linux, en un par de días espero tenerla lista.
Title: Re: Bases de datos
Post by: Phoenix on June 29, 2009, 06:39:06 PM
Splinter, Si me la descargue de Bennupack(http://bennupack.blogspot.com/).

Lo raro es que solo algunas veces da el error del String, es rarisimo  ??? , aun asi como dije... siempre realiza la accion que tu quieres hacer a la base de datos, pero luego da error de ejecucion  >:(
Title: Re: Bases de datos
Post by: osk on June 30, 2009, 09:43:29 PM
Hola.
He estado intentando compilar esta librería para Linux y me han salido estos warnings. No se si tiene algo que ver con lo que decís,pero como va de strings pues a lo mejor alguien ve más allá que yo...

/home/q2dg/Desktop/ssss/main.c|        |In function 'fxi_opendb':|
/home/q2dg/Desktop/ssss/main.c|    65|warning: implicit declaration of function 'string_get'|
/home/q2dg/Desktop/ssss/main.c|    75|warning: implicit declaration of function 'string_discard'|
/home/q2dg/Desktop/ssss/main.c|        |In function 'fxi_GetfieldName':|
/home/q2dg/Desktop/ssss/main.c|   148|warning: implicit declaration of function 'string_new'|
/home/q2dg/Desktop/ssss/main.c|   149|warning: implicit declaration of function 'string_concat'|
/home/q2dg/Desktop/ssss/main.c|   150|warning: implicit declaration of function 'string_use'|
||=== Build finished: 0 errors, 5 warnings ===|

Por cierto, compilar ha compilado, pero a la hora de probar algún código de ejemplo no se encuentra la librería...vamos, hay un lío entre un archivo llamado sql3.h y el archivo .so que he creado yo...un rollo. Ya veré qué pasa.
Title: Re: Bases de datos
Post by: SplinterGU on July 01, 2009, 12:18:46 AM
Quote from: osk on June 30, 2009, 09:43:29 PM
Hola.
He estado intentando compilar esta librería para Linux y me han salido estos warnings. No se si tiene algo que ver con lo que decís,pero como va de strings pues a lo mejor alguien ve más allá que yo...

/home/q2dg/Desktop/ssss/main.c|        |In function 'fxi_opendb':|
/home/q2dg/Desktop/ssss/main.c|    65|warning: implicit declaration of function 'string_get'|
/home/q2dg/Desktop/ssss/main.c|    75|warning: implicit declaration of function 'string_discard'|
/home/q2dg/Desktop/ssss/main.c|        |In function 'fxi_GetfieldName':|
/home/q2dg/Desktop/ssss/main.c|   148|warning: implicit declaration of function 'string_new'|
/home/q2dg/Desktop/ssss/main.c|   149|warning: implicit declaration of function 'string_concat'|
/home/q2dg/Desktop/ssss/main.c|   150|warning: implicit declaration of function 'string_use'|
||=== Build finished: 0 errors, 5 warnings ===|

Por cierto, compilar ha compilado, pero a la hora de probar algún código de ejemplo no se encuentra la librería...vamos, hay un lío entre un archivo llamado sql3.h y el archivo .so que he creado yo...un rollo. Ya veré qué pasa.

eso es parte de lo que decia... seguramente esta prototipando cualquier cosa, y al hacer esto, el stack puede no restaurarse correctamente...
Title: Re: Bases de datos
Post by: Phoenix on July 01, 2009, 10:46:42 AM
y no se puede solucionar?  :-[
Title: Re: Bases de datos
Post by: syous on July 01, 2009, 10:58:48 AM
 :D yo uso esta libreria para fenix y tal no se si estaran las fuentes cuando las encuentre haber si podemos portarla a bennu
Title: Re: Bases de datos
Post by: SplinterGU on July 01, 2009, 11:04:05 AM
Quote from: Phoenix on July 01, 2009, 10:46:42 AM
y no se puede solucionar?  :-[

q clase de pregunta es esa? por supuesto que tiene solucion... ;)
Title: Re: Bases de datos
Post by: SplinterGU on July 01, 2009, 11:04:46 AM
Quote from: syous on July 01, 2009, 10:58:48 AM
:D yo uso esta libreria para fenix y tal no se si estaran las fuentes cuando las encuentre haber si podemos portarla a bennu

gracias.

EDIT: Acabo de ver que esta en pascal... no vale la pena portar eso... hay que hacer un wrap nuevo.
Title: Re: Bases de datos
Post by: l1nk3rn3l on July 02, 2009, 03:24:25 PM
las librerias incluidas en el bennupack son desarrolladas en codigo c/c++
en la mayoria de casos portable...
aqui esta la misma dll que esta en el bennupack
http://www.megaupload.com/?d=HB19T3ZK

comparte el codigo fuente prg y la base de datos que estas usando todo
en un zip, y lo miraremos con gusto...

;D
Title: Re: Bases de datos
Post by: Phoenix on July 03, 2009, 08:28:47 AM
Yo te pasaria todo el codigo con mucho gusto.. pero son demasiadas lineas y sería complicado explicar todo... Buscaré un ejemplo sencillo en el que se de este error y lo postearé... Lo que si diré que es bastante extraño... hice la misma operación en la aplicacion que estoy programando que en otra muy corta de prueba... en la de prueba de 50 lineas funciona bien y en la otra error del String Allocated este :( .
Title: Re: Bases de datos
Post by: gukan on July 03, 2009, 08:50:42 AM
Quote from: Phoenix on June 29, 2009, 08:54:16 AM
              SQLITE3_EXEC(db,"INSERT INTO NombresDeJugadores VALUES("'+NombreJugador+"')");

No tengo mucha idea, pero no sera en este caso el orden de las comillas marcadas en rojo?

Title: Re: Bases de datos
Post by: Phoenix on July 03, 2009, 09:02:38 AM
Quote from: gukan on July 03, 2009, 08:50:42 AM
Quote from: Phoenix on June 29, 2009, 08:54:16 AM
              SQLITE3_EXEC(db,"INSERT INTO NombresDeJugadores VALUES("'+NombreJugador+"')");

No tengo mucha idea, pero no sera en este caso el orden de las comillas marcadas en rojo?


Si bueno, en ese ejemplo las comillas estan mal puestas, pero ese no es el error. Gracias de todas formas.
Title: Re: Bases de datos
Post by: l1nk3rn3l on July 04, 2009, 03:27:25 PM
bueno una prueba seria que colocaras el insert dentro de un
bucle infinito hasta que presiones escape..

a ver si es el error...

porque estuve mirando y no encontre el error
Title: Re: Bases de datos
Post by: osk on July 05, 2009, 02:52:15 AM
Hola. Estoy intentando rehacer la libreria de Sqlite al nuevo formato de módulos de Bennu (y así de paso compilarla para Linux).
Ya he conseguido compilarla, y ejecutando el moddesc, lo hace bien. Sin embargo, aunque dicha librería la copie en la carpeta de los módulos de Bennu, me da un error de "undefined function" para cualquier función de las que tengo definidas en la librería.
Curiosamente, con la estructura que exporto no pasa eso: la reconoce correctamente.

Os paso adjunto el código fuente de la librería tal como la tengo ahora, por si alguien sabe ver a simple vista algún error tonto que cometo al exportar las funciones. Y un código prg de ejemplo (el que viene en el BennuPack) para probarla, que es el que me da el error que comento. Para probarlo se necesita tener el código fuente de sqlite (un archivo c y un par .h que viene en el BennuPack) y también haber compilado previamente éste para tener también su dll correspondiente. No os lo paso porque no me cabe en el tamañao máximo de adjuntos.

Si alguien me puede decir si he cometido algún error...¡Ya casi estoy!
Muchas graaacias.
Title: Re: Bases de datos
Post by: SplinterGU on July 05, 2009, 03:39:28 AM
1) No se necesita mod_strings...
2) los nombres de las funciones deben ir en mayusculas en la declaracion...

funciona a la perfeccion, adjunto link a proyecto con configure+make.

muy buen trabajo!

http://betatester.bennugd.org/snapshot/contrib/sqlite3.tar.gz
Title: Re: Bases de datos
Post by: SplinterGU on July 05, 2009, 04:23:32 AM
Ahi veo otro error...

la estructura global tiene 4 elementos en el C y 3 en el struct... eso provoca cuelgues...

por otro lado, el sistema de dlls de bennu ya soporta definicion de types...

"types_def"
Title: Re: Bases de datos
Post by: osk on July 05, 2009, 09:30:04 PM
Guauu!!! Qué honor!!! Incluir la librería en el directorio de contribs!!! Muchas gracias!!!

De todas maneras, mi felicidad aún no es completa.He cogido el código que has arreglado tu, y en Windows, en intentar ejecutar test01.prg me salta un error diciendo "undefinied identifier: rows" . Rows es un campo del TYPE SqlResult. Mmm. Y en Linux (ansiado momento!), tampoco he podido probar nada porque ningún prg me encuentra mod_sqlite3.so cuando hago un import (ni moddesc tampoco). He probado de añadir la ruta /usr/lib/bgd/module a LD_LIBRARY_PATH y nada. He probado de hacer un link en la misma carpeta a la librería con el nombre de libmod_sqlite3.so y tampoco...no sé qué hacer ya.

Por otro lado, aquí os dejo por si a alguien le interesa un zip con: el código fuente del módulo sqlite3 tal como lo ha arreglado Splinter, junto con su correspondiente compilación para Windows (dll) y para Linux 32bits (so). Además, os paso el código fuente de la api c oficial del Sqlite original (que viene con licencia libre total de uso, y que es necesaria lógicamente para que el módulo funcione), junto con su correspondiente compilación para Windows (dll) y para Linux 32bits (so). Y finalmente, un par de códigos de ejemplo, test01.prg y test02.prg, cogidos directamente del BennuPack.

http://rapidshare.com/files/252378832/SQLite3.zip.html

Venga, hasta luego!
Title: Re: Bases de datos
Post by: SplinterGU on July 05, 2009, 10:20:10 PM
tenes que compilar la version de bennu nueva, la del svn.

por otro lado, desconozco porque no tiene referencias a la libsqlite3.so, y por que esta usando la libc++, como lo compilaste?
no usaste los configure que hice?
Title: Re: Bases de datos
Post by: Phoenix on July 11, 2009, 08:44:47 AM
 ::) Al final me di cuenta que lo que daba el error era un Write_string(~) que no me acuerdo lo que imprimia , pero salia el Asertion Failed al llamar al proceso.

Gracias por la libreria l1nk3rn3l :)

SplinterGU, el mod esta solo para linux?
Title: Re: Bases de datos
Post by: SplinterGU on July 11, 2009, 03:20:28 PM
si te referis a lo que yo hice, yo lo compile para linux, pero podes compilarlo con el mismo paquete para windows.
Title: Re: Bases de datos
Post by: DCelso on July 12, 2009, 01:01:40 AM
simplemente genial, ardo en deseos de probarlo, gracias osk.
Ya que has aprendido ha hacer módulos bennu, espero que sea el comienzo de una era de aparición de nuevos módulos osk útiles :).
Title: Re: Bases de datos
Post by: Windgate on July 12, 2009, 12:03:24 PM
Otro de tantos hilos que me pierdo...

Para hacer una BD que incluya personaje + arma + hechizo y poder generar "combinaciones" puede ser interesante... Es lo primero que se me ocurre.

Lo probaré, ya lo creo que lo probaré... ;D

Gracias, es un pedazo de aporte tener SQL en Bennu, al final va a terminar siendo el mejor lenguaje del mundo, llevo 1 año prácticamente usando sólo Bennu para todo :P
Title: Re: Bases de datos
Post by: osk on July 12, 2009, 06:22:19 PM
Gracias DCelso!!
Bueno, la intención inicial era aprender yo para ponerlo por escrito y así hacer que todo el mundo tuviera paso a paso una guía de cómo hacer módulos. En verdad no es tan difícil, pero sin ninguna documentación de por medio te vas dando trompazos cada dos por tres hasta que al final pillas cómo va más o menos.
Pero no descarto hacer algún módulo de las cosas que creo que le faltan aún a Bennu...tal vez un módulo para conectar con MySQL, o bien un módulo multimedia (tomando como base el de Gstreamer de Josebita) pero con posibilidades de vídeo, o también un módulo para el manejo del wiimote...No sé, lo que se vaya viendo.
Title: Re: Bases de datos
Post by: syous on July 12, 2009, 07:23:40 PM
Quote from: osk on July 12, 2009, 06:22:19 PM
Gracias DCelso!!
Bueno, la intención inicial era aprender yo para ponerlo por escrito y así hacer que todo el mundo tuviera paso a paso una guía de cómo hacer módulos. En verdad no es tan difícil, pero sin ninguna documentación de por medio te vas dando trompazos cada dos por tres hasta que al final pillas cómo va más o menos.
Pero no descarto hacer algún módulo de las cosas que creo que le faltan aún a Bennu...tal vez un módulo para conectar con MySQL, o bien un módulo multimedia (tomando como base el de Gstreamer de Josebita) pero con posibilidades de vídeo, o también un módulo para el manejo del wiimote...No sé, lo que se vaya viendo.

;D haces uno para Mysql y eres dios y te hago un monumento es lo unico que me falta para dejar Fenix para el proyecto
Title: Re: Bases de datos
Post by: SplinterGU on July 12, 2009, 10:48:32 PM
recomiendo hacer un modulo con opendbx, que es una capa de abstraccion de base de datos, con lo que con un mismo codigo podemos acceder a diferentes motores de base de datos, sin cambiar una sola linea de codigo... actualmente soporta...

    * Firebird
    * Interbase
    * MS SQL Server
    * MySQL
    * Oracle
    * ODBC
    * PostgreSQL
    * SQLite 2 and 3
    * Sybase ASE

http://www.linuxnetworks.de/doc/index.php/OpenDBX
http://www.linuxnetworks.de/doc/index.php/OpenDBX/Support
Title: Re: Bases de datos
Post by: osk on July 12, 2009, 10:56:23 PM
Ei, parece muy interesante!!
Y no demasiado complicado.
Me lo voy a mirar a ver qué tal.
Gracias!!

Title: Re: Bases de datos
Post by: syous on July 12, 2009, 11:01:53 PM
Quote from: osk on July 12, 2009, 10:56:23 PM
Ei, parece muy interesante!!
Y no demasiado complicado.
Me lo voy a mirar a ver qué tal.
Gracias!!




te hago un monumento ;D
Title: Re: Bases de datos
Post by: SplinterGU on July 12, 2009, 11:36:40 PM
de nada... yo lo use... y es muy simple...

incluso se pueden armar backends para agregar mas soportes a base de datos si hace falta.
Title: Re: Bases de datos
Post by: l1nk3rn3l on July 15, 2009, 05:04:56 PM
joder , no lo conocia, ya tengo el port listo de opendbx ,
ya lo integre(una funcion nomas)

solo bastara agregar las restantes, pronto la publicare,
la opendbx en bennu
Title: Re: Bases de datos
Post by: osk on July 15, 2009, 05:54:10 PM
Jolín, qué rápido!!!
KARMAAAA!!!!
Title: Re: Bases de datos
Post by: SplinterGU on July 15, 2009, 06:52:05 PM
mas que excelente!
Title: Re: Bases de datos
Post by: l1nk3rn3l on July 21, 2009, 02:27:50 PM
 ;D

una version preliminar con varios bugs pero funcional..
http://www.megaupload.com/?d=K7BGWPIE


...
Title: Re: Bases de datos
Post by: SplinterGU on July 22, 2009, 03:32:28 AM
muy bien... un karma!
Title: Re: Bases de datos
Post by: Windgate on July 22, 2009, 12:17:21 PM
La he probado, pero sólo me ha funcionado el 2º ejemplo... He mirado el código por encima (Del 2º ejemplo) y la verdad es que parece bastante fácil de usar, es SQL de toda la vida xD

Por cierto, veo que son DLL así que sólo he podido usarlo en Windows. No se me ocurre ninguna utilidad todavía pero si se me ocurre para alguno de mis juegos lo usaré :P
Title: Re: Bases de datos
Post by: l1nk3rn3l on July 22, 2009, 05:43:52 PM
Windgate, es que cada ejemplo necesita del servidor correspondiente
para funcionar..

el unico que no necesita es el ejemplo del sqlite3, ya que el no es un servidor como tal,,

aqui la nueva version...

http://rapidshare.com/files/258798254/OpenDBX.rar.html
http://www.megaupload.com/?d=KEOXLITH

he ahi una version ya corregida y bastante funcional con los fuentes
para el que quiera usarla, por lo que veo esto es una libreria
muy funcional pero muy compleja para usarla en videojuegos
seria mas util para proyectos universitarios o empresariales,,

para juegos recomiendo la otra dll, que es la sqlite3 que alguien ya porto a linux,
mas funcional y mas portable a consolas..

no siendo mas la dejo ahi para que alguien la mejore o la porte a linux, etc , etc.
no la tocare mas...
Title: Re: Bases de datos
Post by: l1nk3rn3l on August 03, 2009, 01:37:18 PM
se me olvido comentar que bennu tiene un posible error con las strings

incluido en uno de los ejemplos del opendbx , hay esta comentado..

creo que es:

string k="";

k+=resultado("cxxx");

y otro error que vi en el bennu3d es cuando inicializas un tipo definido


type hola
  float x,y,z;
end;


type hola2
   int cc;
   hola k;
   int i;
  hola k2;
  int u,o;
end;

global

hola2 LLLp= 1,
    2,3,4,   
    6,
    7,8,9,
    0,1;
     
cuando imprimes los valores algunos valen cero

voy a traer el ejemplo bien para estos structs para que lo mires

gracias...

mira aqui esta el ejemplo:

type _Pos3D  //posicion 3d
  float x, y, z;
end;

type  _PhyModel //modelo fisico
  float mass;
  int model;
  int typemodel;   
 
  int AutoUpdateDim;
  _Pos3D Box;
  float radius;
end;

PhyModel hh=
   0,
   1,
   2,
   3,
   4,5,6,
   7 ;
   
Title: Re: Bases de datos
Post by: l1nk3rn3l on August 06, 2009, 10:33:53 PM
se me olvido especificar que el error de strings es cuando lo colocas en un bucle:

for ....
k+="cxxx";
end;

el resultado no es bien...
Title: Re: Bases de datos
Post by: SplinterGU on August 07, 2009, 04:59:33 AM
como siempre, ejemplos completos...

con respecto a que muestra cero, es que supongo que esta haciendo la conversion de int a float, deberias poner 0.0, 5.0, etc... creo que es asi.
Title: Re: Bases de datos
Post by: Windgate on August 07, 2009, 10:24:47 AM
En cuanto a lo de las cadenas, "sumando" caracteres en un bucle: ¿El error se produce nada más empezar o una vez transcurridas unas iteraciones?

Al ritmo que puede llegar a ejecutarse quizá estés construyendo una monstruosa cadena... Aunque el límite debería ser altísimo eso sí. ¿Sólo pasa en Bennu3d?

Personalmente nunca había probado a forzar el límite de tamaño de una string :P