programing

C99 stdint.h 헤더 및 MS Visual Studio

itsource 2022. 7. 3. 23:56
반응형

C99 stdint.h 헤더 및 MS Visual Studio

놀랍게도 C99 stdint.h가 MS Visual Studio 2003 이상에서 발견되지 않았습니다.나름의 이유가 있겠지만, 어디서 다운로드 받을 수 있는지 아는 사람 있나요?이 헤더가 없으면 uint32_t 등의 유용한 유형에 대한 정의는 없습니다.

업데이트: Visual Studio 2010 및 Visual C++ 2010 Express 모두stdint.h에 기재되어 있습니다.C:\Program Files\Microsoft Visual Studio 10.0\VC\include

직접 정의해 보세요.

#ifdef _MSC_VER

typedef __int32 int32_t;
typedef unsigned __int32 uint32_t;
typedef __int64 int64_t;
typedef unsigned __int64 uint64_t;

#else
#include <stdint.h>
#endif

이 헤더의 MS 버전은 다음 사이트에서 다운로드할 수 있습니다.

https://github.com/mattn/gntp-send/blob/master/include/msinttypes/stdint.h

휴대용 제품은 다음 사이트에서 찾을 수 있습니다.

http://www.azillionmonkeys.com/qed/pstdint.h

Software Ramblings 블로그 덕분입니다.

NB: Michael Burr가 코멘트에서 언급한 헤더의 Public Domain 버전은 아카이브된 복사본으로 여기에서 찾을 수 있습니다.업데이트된 버전은 libusb_aah의 Android 소스 트리에서 찾을 수 있습니다.

Visual Studio 2003 - 2008 (Visual C++ 7.1 - 9)는 C99와 호환성이 없다고 주장하지 않습니다.(rdentato의 코멘트 덕분입니다.)

Microsoft는 C99를 지원하지 않으며 이에 대한 계획을 발표하지 않았습니다.나는 그들이 C++ 표준을 추적하려고 한다고 생각하지만 C++의 서브셋을 제외하고 C는 사실상 쓸모없는 것으로 간주한다.

Visual Studio 2003 이후의 새 프로젝트에서는 기본적으로 "C++ 코드(/TP)로 컴파일" 옵션이 설정되므로 .c 파일은 모두 C++로 컴파일됩니다.

부스트에는 찾고 있는 타입의 cstdint.hpp 헤더파일이 포함되어 있습니다.http://www.boost.org/doc/libs/1_36_0/boost/cstdint.hpp

다른 휴대용 솔루션:

POSH: 휴대용 오픈 소스 하니스

「POSH는, 심플하고, 휴대성이 높고, 사용하기 쉽고, 통합이 용이하며, 유연성이 뛰어난 오픈 소스 「하드니스」입니다.이러한 소스는 크로스 플랫폼 라이브러리와 애플리케이션의 작성과 포팅의 번거로움을 큰폭으로 경감할 수 있도록 설계되어 있습니다.」

http://poshlib.hookatooka.com/poshlib/trac.cgi

설명 및 사용:휴대용 코드 작성: Brian Hook http://books.google.ca/books?id=4VOKcEAPPO0C의 여러 플랫폼용 소프트웨어 개발 소개

- Jason

언급URL : https://stackoverflow.com/questions/126279/c99-stdint-h-header-and-ms-visual-studio

반응형