Hola estoy intentando correr este codigo pero el compilador me arroja
||=== Build: Debug in test4 (compiler: GNU GCC Compiler) ===|
13|error: invalid type argument of '->' (have 'unsigned int')|
||=== Build failed: 1 error(s), 0 warning(s) (0 minute(s), 0 second(s)) ===|
Aqui el codigo, si me podrian ayudar el por que de este error.
#include <stdio.h>
#include <stdlib.h>
typedef struct errorStruct{
enum ErrorCompile { sintax, declaration } ErrorCompile;
enum ErrorDriver { connection, power } ErrorDriver;
}ErrorStruct;
int main()
{
ErrorStruct *myErrorStruct = calloc(sizeof(ErrorStruct),1);
printf("Error %d\n",myErrorStruct->ErrorCompile->declaration);
return 0;
}
No puedes definir enums dentro de una estructura, debes hacerlo fuera. Las estructuras son variables reunidas de forma lógica, por tanto no tiene sentido crear ese tipo de dato dentro. Lo que puedes hacer es sacarlos fuera y crear sus variables dentro del struct.
;-)
Gracias