알 수없는 유형 이름 'uint8_t', MinGW
나는 "unknown type name 'uint8_t'"를 얻고 다른 사람들은 MinGW에서 C를 사용합니다. 이것을 해결하는 방법에 대한 아이디어가 있습니까?
stdint.h
또는을 포함 해보십시오 inttypes.h
.
uint8_t
유형 별칭 을 사용하려면 stdint.h
표준 헤더 를 포함해야합니다 .
편집하다:
명확하게하기 : 순서가 #include
중요하고 디자인 패턴의 일부가 아닌 경우 (읽기 : 이유를 모르겠 음) 디자인을 다시 생각해야합니다. 아마도 이것은 #include
문제를 일으키는 헤더 파일에 를 추가해야 함을 의미합니다 .
이 시점에서 저는 예제의 장점에 대해 논의 / 방어하는 데 거의 관심이 없지만 컴파일 프로세스의 일부 뉘앙스와 오류가 발생하는 이유를 보여 주므로 그대로 두겠습니다.
편집 종료
당신은 필요 전에 필요한 다른 라이브러리 인터페이스.#include
stdint.h
#include
예:
내 LCD 라이브러리는 uint8_t 유형을 사용합니다. 인터페이스 ( Display.h
)와 구현 ( Display.c
)으로 라이브러리를 작성했습니다.
display.c에는 다음이 포함됩니다.
#include <stdint.h>
#include <string.h>
#include <avr/io.h>
#include <Display.h>
#include <GlobalTime.h>
그리고 이것은 작동합니다.
그러나 다음과 같이 다시 정렬하면 :
#include <string.h>
#include <avr/io.h>
#include <Display.h>
#include <GlobalTime.h>
#include <stdint.h>
설명하는 오류가 발생합니다. 때문이다 Display.h
에서 요구 물건 stdint.h
Display.h 컴파일 한 후 그 정보가 컴파일되어 있기 때문에 그것을 액세스 할 수 없습니다.
따라서 stdint.h
필요한 라이브러리 위로 이동 하면 더 이상 오류가 발생하지 않습니다.
참고 URL : https://stackoverflow.com/questions/8953274/unknown-type-name-uint8-t-mingw
'Program Tip' 카테고리의 다른 글
WebView의 HTTP 요청 가로 채기 및 재정의 (0) | 2020.12.03 |
---|---|
목록 반복 중에 java.util.List에서 요소를 제거 할 때 ConcurrentModificationException이 발생합니까? (0) | 2020.12.03 |
주어진 텍스트 파일에서 모든 공백을 제거하는 방법 (0) | 2020.12.03 |
JavaScript에서 객체 배열을 인쇄하는 방법은 무엇입니까? (0) | 2020.12.03 |
치명적인 오류 : 권한 테이블을 열고 잠글 수 없음 : 테이블 'mysql.host'가 존재하지 않습니다. (0) | 2020.12.02 |