[C con Clase] Problemas con un array

Samuel Díaz García samueldg en arcoscom.com
Jue Oct 16 19:04:01 CEST 2014


Si es C++ busca información sobre el template array o alguno de esos, te 
pueden a ayudar a que sea un array dinámico en tiempo de ejecución sin 
necesidad de quebrarte.

Ahora bien, las alternativas estándares como malloc, alloc, etc.... 
siempre han funcionado, funcionan y seguirán funcionando muy bien.

Salu2

El 16/10/14 16:49, d1cor escribió:
> On Thu, 16 Oct 2014 15:31:28 +0200
> marcelinux <marcelinator en gmail.com> wrote:
>
>> j> >
>> j> > float a;
>> j> > float b;
>> j> >
>> j> > float c[a][b];
>> j> >
>> j> > al compilar el código me sale el siguiente error: [Error] size of array
>> j> > 'c' has non-integral type 'float'
>> j> >
>>
>> Además, a y b tienen que se constantes.
>> Mira: http://c.conclase.net/curso/index.php?cap=010#inicio
>> Donde dice: Otro detalle muy importante es que cuando se declaran arrays, los valores para el número de elementos deben ser siempre
>> constantes enteras. Nunca se puede usar una variable para definir el tamaño de un array.
>
> Lo dicho, agrego como dato adicional que los arreglos, como las variables, de definen en tiempo de compilación, y es por ello que ya deben poseer dimensiones fijas.
>
> Si lo que estás necesitando es que el arreglo sea definido en tiempo de ejecución, por ejemplo, para que sus dimensiones sean ingresadas por el usuario durante la ejecución del proceso, no podés utilizar arreglos, deberías utilizar asignación dinámica de memoria (malloc, calloc, realloc, free) y utilizar punteros de un determinado tipo dependiendo de tus necesidades, con el fin de poder moverte, mediante aritmética de punteros, por tu región reservada dinámicamente.
>
> Espero que sume.
> Slds a todos!
>
> ----------------------------------------------------------------------
> Ing. Diego Cordoba
> GNU/Linux Instructor & Consultant
> CLA Carrera Linux Argentina
> LPI Linux Certified Professional
> www.carreralinux.com.ar - www.diegocordoba.tk
> ----------------------------------------------------------------------
>
> _______________________________________________
> Lista de correo Cconclase Cconclase en listas.conclase.net
> http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net
> Bajas: http://listas.conclase.net/index.php?gid=2&mnu=FAQ
>

-- 
Samuel Díaz García
ArcosCom Wireless, S.L.U.

CIF: B11828068
Plaza de las Aguas, 2
11630 - Arcos de la Frontera
Cadiz

http://www.facebook.com/ArcosComWireless
mailto:samueldg en arcoscom.com

Móvil: 678 17 66 12
Tlfn.: 956 70 13 15




Más información sobre la lista de distribución Cconclase