Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: SaGaRaS en 3 Diciembre 2014, 06:10 am



Título: [Error] char dentro de struct (AYUDA)
Publicado por: SaGaRaS en 3 Diciembre 2014, 06:10 am
Alguien podría decirme porqué da error en la linea de char, he intentado muchas formas pero sin exito.


Citar
struct lconsumoactual{
char rango[30]="0-130"; //LINEA DE ERROR
int consumokwh;
double valorkwh;
double totalenergia;
float subisidio;
double total;
};

Error:
Citar
invalid in-class initialization of static data member of non-integral type 'char [30]'



Compilador -> Dev C++ v7 (creo)

Saludos ! gracias de antemano!


Título: Re: [Error] char dentro de struct (AYUDA)
Publicado por: Orubatosu en 3 Diciembre 2014, 11:06 am
A mi esa línea me compila y funciona sin problemas ni errores, claro que estoy usando un compilador moderno (MinGW 64)

No obstante, si lo que quieres es almacenar un texto (0-130) ¿no sería mas simple usar una variable de tipo string?


Título: Re: [Error] char dentro de struct (AYUDA)
Publicado por: eferion en 3 Diciembre 2014, 11:27 am
"0-130" no es un char*, es un const char*. Aunque pueda parecer una tontería no lo es. Si intentas modificar un const char* durante la ejecución del programa puedes conseguir que tu aplicación funcione incorrectamente.

Si tu idea es copiar ese string en la variable, usa strcpy. No lo hagas a pelo.