Mensajes: 126
Temas: 18
Gracias Recibidas: 21 en 18 posts
Gracias Dadas: 60
Registro en: Jul 2020
Hola a todos.
Me estoy volviendo loco con un error que no soy capaz de encontrar. Tengo esta función, que basicamente rellena un array de dos dimensiones preguntando al usuario por los números.
GAMBAS
Print "Introduce los datos de la matriz '" & d
& "':" For a
= 0 To columnas
- 1 Print "Dato [" & Str(c
+ 1) & ", " & Str(a
+ 1) & "] = ?" Print "Dato no válido..." en[c, a] = b
Como apunte, las variables "filas" y "columnas" son variables de clase y he comprobado que no tengan un valor de cero. El caso que es en la primera vuelta del bucle for me da un error de "Bad number of dimensions" en la línea 22. Y no puede ser, ya que las variables "c" y "a" tienen el valor de 0, como digo es en la primera interacción.
El caso que poninedo este código en la web de Gambas no me da error.
GAMBAS
filas = 3
columnas = 3
d="jk"
Print "Introduce los datos de la matriz '" & d
& "':" For a
= 0 To columnas
- 1 Print "Dato [" & Str(c
+ 1) & ", " & Str(a
+ 1) & "] = ?" entrada = "3"
Print "Dato no válido..." en[c, a] = b
Como se puede observar es practicamente el mismo, el primero me da error y el segundo no. ¿Alguién ve lo que estoy haciendo mal?
Muchas gracias.
Un saludo.
Mensajes: 1,363
Temas: 193
Gracias Recibidas: 320 en 238 posts
Gracias Dadas: 236
Registro en: Jul 2020
(08-08-2022, 00:03)guizans escribió: Como se puede observar es practicamente el mismo, el primero me da error y el segundo no. ¿Alguién ve lo que estoy haciendo mal?
Creo que te has respondido tu solo. Si no asignas un valor para filas y columnas estas tienen el valor 0
1 Saludo.
Mensajes: 126
Temas: 18
Gracias Recibidas: 21 en 18 posts
Gracias Dadas: 60
Registro en: Jul 2020
08-08-2022, 22:22
(Última modificación: 08-08-2022, 23:15 por
guizans.)
Pues no va a ser eso, por una sencilla razón, las variables filas y columnas, como puedes ver no están declaradas en la función, son variables de clases y se le asigna el valor en otra función. Cuando el programa se me cae el depurador me pone el valor de esas dos variables y nunca son ceros. Otra cosa que me extraña, es que esa función ya hace tiempo que la programé y nunca me dio error que yo recuerde. Y no he realizado ningún cambio. Es que ese error me tiene desconcertado, no acabo de ver que estoy haciendo mal, o si es un error del intérprete.
Un saludo.
P.D. Acabo de copiar la función que me da error en un nuevo proyecto y ahí no me da ningún tipo de error. Eso quiere decir que no tengo error en el código. Ahora llega la gran pregunta...¿que hago? Por que la cosa me tiene desquiciado.
Mensajes: 1,116
Temas: 121
Gracias Recibidas: 402 en 269 posts
Gracias Dadas: 431
Registro en: Jul 2020
De tu error en concreto no puedo ayudarte, nunca se me dio. Sin embargo de pequeños fallos "fantasma" similares sí tengo experiencia y en algunos casos se solucionó borrando todos los archivos de la carpeta .gambas del proyecto, para forzar una compilación nueva, revisando si hay componentes enlazados que no se usan y, en última instancia (sólo una vez me pasó) copiando todos los objetos del proyecto a uno nuevo.
Como son cosas tan esporádicas no puedo documentarlas y ni siquiera recuerdo con qué versiones de gambas ocurrieron... eso sí, fue hace tiempo.
Suerte.
No podemos regresar
Mensajes: 126
Temas: 18
Gracias Recibidas: 21 en 18 posts
Gracias Dadas: 60
Registro en: Jul 2020
Hola.
He intentado borrar la carpeta oculta de Gambas del proyecto y sigue igual, así que no me queda otro remedio que hacer lo que dices, copiar todo el proyecto a uno nuevo. Es un fastidio, pero si es la única solución no me queda otra.
Gracias por la ayuda.
Un saludo.