tag sobre responder raras preguntas para lista hacer cosas con amigos c windows mingw

sobre - tags para hacer con amigos



nombre de tipo desconocido ''uint8_t'', MinGW (3)

Obtengo "nombre de tipo desconocido ''uint8_t''" y a otros les gusta usar C en MinGW ¿Alguna idea de como resolver esto?


Intente incluir stdint.h o inttypes.h .


Para usar el alias de tipo uint8_t , debe incluir el encabezado estándar stdint.h .


EDITAR:

Para ser claro: si el orden de su #include s importa y no es parte de su patrón de diseño (lea: no sabe por qué), entonces necesita repensar su diseño. Probablemente, esto solo significa que necesita agregar el #include al archivo de encabezado que causa problemas.

En este punto, tengo poco interés en discutir / defender los méritos del ejemplo, pero lo dejaré puesto que ilustra algunos matices en el proceso de compilación y por qué dan como resultado errores.

EDICIÓN FINAL

#include stdint.h ANTES de #include cualquier otra interfaz de biblioteca que lo necesite.

Ejemplo:

Mi biblioteca LCD utiliza tipos uint8_t. Escribí mi biblioteca con una interfaz ( Display.h ) y una implementación ( Display.c )

En display.c, tengo los siguientes incluye.

#include <stdint.h> #include <string.h> #include <avr/io.h> #include <Display.h> #include <GlobalTime.h>

Y esto funciona.

Sin embargo, si los reorganizo así:

#include <string.h> #include <avr/io.h> #include <Display.h> #include <GlobalTime.h> #include <stdint.h>

Me sale el error que describe. Esto se debe a que Display.h necesita cosas de stdint.h pero no puede acceder porque la información se compila DESPUÉS de que se compile Display.h

Así que mueva stdint.h encima de cualquier biblioteca que lo necesite y ya no debería recibir el error.