LPDWORD, DWORD 등을 사용하는 C++ 프로그램이 있습니다. GCC를 사용하여 컴파일 할 때 오류가 발생합니다. GCC에서 LPDWORD, DWORD, LPBYTE 및 LPTSTR을 어떻게 처리합니까? Windows 시스템에서 경우GCC의 LPDWORD, LPSTR 핸들
답변
, 당신은이 데이터 유형은 Windows API datatypes 전형적인
#include <windows.h>
사용할 수 있습니다.
다른 플랫폼을 사용하는 경우 typedef
데이터 유형을 사용할 수 있지만 문제가 계속 발생하고 많은 코드를 이식해야 할 수 있습니다.
typedef uint32_t* LPDWORD;
typedef uint32_t DWORD;
// etc
이러한 typedef는 모두 Microsoft의 GCC typedef 버전입니다. 프로그램에 그 중 일부만 가지고 있다면 헤더 파일을 추가하여 GCC의 의미로 변환 할 수 있습니다.
는 마이크로 소프트의 데이터 유형에 대한 자세한 정보를 원하시면이 MSDN 페이지를 참조하십시오 :http://msdn.microsoft.com/en-us/library/aa383751(VS.85).aspx
사람들은 윈도우 특정 헤더 파일 WINDOWS.H에 정의 된 유형입니다. 코드에서 이러한 유형을 사용하는 경우 Windows 전용 함수도 많이 사용되므로 이식 할 수 없습니다. GCC로 코드를 컴파일 할 수 없다는 말은 아닙니다. MinGW port으로 할 수 있지만 Windows에서만 작동합니다.
실제로 이러한 유형은 windev.h에 정의되어 있습니다. windows.h를 포함하면 유형을 얻을 수 있지만 필요하지 않은 추가 선언문을 많이 얻을 수 있습니다. – harper
@harper 함수를 호출하지 않으면 왜 형식이 필요한지 알 수 없습니다. –
물론, 적절한 프로토 타입을위한 모든 헤더 파일을 포함해야합니다. 그러나 BYTE 형식을 운영 체제 또는 특정 기능과 독립적 인 바이트로 사용하는 것이 좋습니다. 그러나 Suriyan Suresh는 이러한 유형에 대한 지원을 요청했습니다. 누락 된 기능 프로토 타입이 발견되지 않았습니다. 따라서 정의를 보유하고있는 파일을 보는 것이 더 적은 작업입니다. – harper
- 1. .NET의 LPSTR (Char *)
- 2. LPSTR 문자열 검색
- 3. 창 핸들 핸들 (c)
- 4. LPSTR 사용 후 메모리를 비우는 방법
- 5. GCC의 부동 소수점 연산
- 6. C GCC의 함수 정렬
- 7. GCC의 레지스터 값 덤프
- 8. gcc의 strlen() 구현
- 9. -lgcc_s와 gcc의 차이점
- 10. gcc의 라이브러리에 연결
- 11. GCC의 unordered_map 오류
- 12. 컨트롤 핸들
- 13. 핸들 클릭은
- 14. DISPID_ONVISIBLE 핸들
- 15. 핸들 C#
- 16. 장치 핸들
- 17. 플로트 코드와 GCC의 일관된 동작
- 18. windows 및 gcc의 목적 c
- 19. GCC의 .a 및 .o 파일
- 20. gcc의 어셈블리 문과 관련된 문제
- 21. Javascript에서 C++ 로의 char 포인터 -JSCTypes에서의 LPSTR 버퍼
- 22. 핸들 앱에 핸들 전달 또는 관리/비 관리 도움말
- 23. QDockWidget - 핸들 제거
- 24. Struts2 컨텍스트 핸들
- 25. 개마 트위터 핸들 오류
- 26. 대기 핸들 결합?
- 27. 핸들 SAX의의 ParserException
- 28. 핸들 이벤트 원격 제어
- 29. Silverlight 핸들 UserControl
- 30. 핸들/그립 바 컨벤션
LPSTR, LPBYTE에 대한 귀하의 회신에 감사드립니다. –
'typedef char * LPSTR; typedef unsigned char * LPBYTE; ' –
매우 고마워요. –