UTNianos

Versión completa: [DUDA] Algoritmos
Actualmente estas viendo una versión simplificada de nuestro contenido. Ver la versión completa con el formato correcto.
Hola! Tengo un problema al momento de programar y es al momento de usar "const". Este es un ejemplo que nos mostró el profesor y vi que le funcionaba pero al hacerlo me salta error en la primera linea de código.

const ushort MAX_DIAS = 365;
typedef unsigned short ushort;
typedef float tvDias[MAX_DIAS];
Hola

(29-06-2019 20:04)Jo50 escribió: [ -> ]Tengo un problema al momento de programar y es al momento de usar "const". Este es un ejemplo que nos mostró el profesor y vi que le funcionaba pero al hacerlo me salta error en la primera linea de código.


const ushort MAX_DIAS = 365;
typedef unsigned short ushort;
typedef float tvDias[MAX_DIAS];


¿Cuál es el error que te aparece? No somos adivinos. ¿Estás trabajando en C++? Es importante que aclares todo esto antes de escribir 3 líneas sueltas de código.

El problema está en que, si es C++, el compilador no reconoce la palabra ushort porque no la encuentra. Esto se soluciona ni bien poner la línea 2 antes de la 1. Para otros errores tenés que ser más específico.

Saludos.

P.D. No es una buena práctica querer "imitar" a otros lenguajes de programación estando en uno. La palabra ushort puede provenir del estándar C#, pero no es estándar en C++, por lo que su uso no se recomienda; se recomienda el uso de unsigned short que sí es estándar en C++. Más información aquí.
El problema lo tenes en el orden que lo hiciste, INNECESARIA LA CONTESTACIÓN COMO ENOJADO DEL MUCHACHO QUE LE CONTESTO ARRIBA, fijate que definiste el EL NOMBRE DEL TIPO POR EL CUAL LO IBAS A LLAMAR DE FORMA ABREVIADA después de usarlo. Y en la mayoría de los lenguajes, el compilador lee de ARRIBA HACIA ABAJO EL CÓDIGO A MENOS HAYA UN SALTO, por lo tanto no te reconoce el "ushort". Si vos pones primero el typedef del ushort y después la constante funciona, PORQUE sino NO EXISTE ESA DEFINICIÓN hasta ahí. DEBERÍAS ESCRIBIR:

typedef unsigned short ushort;
const ushort MAX_DIAS = 365;
typedef float tvDias[MAX_DIAS];

Por ultimo para que funciones tenés que agregar el main, sino el compilador no sabe de donde arrancar el proceso.

typedef unsigned short ushort;
const ushort MAX_DIAS = 365;
typedef float tvDias[MAX_DIAS];
main(){/*de manera abreviada*/
}
URLs de referencia