psykhon, por lo que se yo, las estructuras son simples tipos de variable. Por lo tanto no puedes definir una estructura, y usarla tal cual. Seria como hacer "int; int=20;". Tienes que crear una instancia de esa estructura: "struct x MiEstructura;" y luego, podras usarlo asi: "MiEstructura.xx=25;" Las variables internas de la estructura se mantienen, lo unico que tienes que crear instancias de esa estructura.
Respecto a mi opinion en cuanto a C, decir que he tenido CCSitis, y luego probé C18, Hitech PICC y C30.
Al principio cuesta desprenderse de la CCSitis pero llevaba la carga de los innumerables dias que me hicieron perder bugs tontos de ccs, por lo que tuve fuerzas mas que suficientes. Hitech PICC destaca por su interfaz y librerias; yo diria que es un hibrido entre CCS y C18/30.
C30, con su interfaz MPLAB, cuesta mucho al principio cogerlo, pues no es todo "en bandeja" como CCS. Pero una vez comprendes como va, y sabes configurarlo, esta muy bien, es muy versatil y dinamico. Lo de hacer "a pelo" todas las configuraciones, uno a la larga lo agradece. El tiempo os dará la razon. La libreria mas versatil es aquella que en mas bajo nivel está y mas comprensible es. Trabajar "bit por bit" las cosas y con menos "funciones prefabricadas" da mas dinamismo a la programacion.
No se, yo estoy encantadisimo con C30. Frente a Hitech PICC, decir que C30 tiene una comunidad de usuarios mas grande y activa (forum.microchip.com) que hitech... a mi el foro me parecio bastante muerto. Y de CCS no me gustaria hablar porque a lo mejor cerrais mi post por blasfemias. Muy comodo y muy bonito... muy principiante a mi parecer. Basta que hagas un programa un poco enrevesado para que ccs saque un bug de su baraja. Lo digo por experiencia. Y no sabes si el bug es del compilador, o de la libreria que esta mal hecha, o que.
Un saludo