欢迎来到天天文库
浏览记录
ID:34418541
大小:31.50 KB
页数:3页
时间:2019-03-06
《sizet和ssizet的含义和区别》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、size_t和ssize_t的含义和区别stddef.hC语言头文件。作用:定义/声明了一些经常使用的常数,类型和变量VC中stddef.h的内容:/****stddef.h-definitions/declarationsforcommonconstants,types,variables**Copyright(c)1985-1997,MicrosoftCorporation.Allrightsreserved.**Purpose:*Thisfilecontainsdefinitionsanddeclarationsforsomecommonly*usedconstants,typ
2、es,andvariables.*[ANSI]**[Public]*****/#if_MSC_VER>1000#pragmaonce#endif#ifndef_INC_STDDEF#define_INC_STDDEF#if!defined(_WIN32)&&!defined(_MAC)#errorERROR:OnlyMacorWin32targetssupported!#endif#ifdef__cplusplusextern"C"{#endif/*Define_CRTIMP*/#ifndef_CRTIMP#ifdef_DLL#define_CRTIMP__declspec(dlli
3、mport)#else/*ndef_DLL*/#define_CRTIMP#endif/*_DLL*/#endif/*_CRTIMP*//*Define__cdeclfornon-Microsoftcompilers*/#if(!defined(_MSC_VER)&&!defined(__cdecl))#define__cdecl#endif/*Define_CRTAPI1(forcompatibilitywiththeNTSDK)*/#ifndef_CRTAPI1#if_MSC_VER>=800&&_M_IX86>=300#define_CRTAPI1__cdecl#else#de
4、fine_CRTAPI1#endif#endif/*DefineNULLpointervalueandtheoffset()macro*/#ifndefNULL#ifdef__cplusplus#defineNULL0#else#defineNULL((void*)0)#endif#endif#defineoffsetof(s,m)(size_t)&(((s*)0)->m)/*Declarereferencetoerrno*/#if(defined(_MT)
5、
6、defined(_DLL))&&!defined(_MAC)_CRTIMPexternint*__cdecl_errno(v
7、oid);#defineerrno(*_errno())#else/*ndef_MT&&ndef_DLL*/_CRTIMPexterninterrno;#endif/*_MT
8、
9、_DLL*//*definetheimplementationdependentsizetypes*///定义依赖于实现规模类型#ifndef_PTRDIFF_T_DEFINEDtypedefintptrdiff_t;#define_PTRDIFF_T_DEFINED#endif#ifndef_SIZE_T_DEFINEDtypedefunsignedintsize_t;#define_SIZE_T_DEFI
10、NED#endif#ifndef_WCHAR_T_DEFINEDtypedefunsignedshortwchar_t;#define_WCHAR_T_DEFINED#endif#ifdef_MT_CRTIMPexternunsignedlong__cdecl__threadid(void);#define_threadid(__threadid())_CRTIMPexternunsignedlong__cdecl__threadhandle(void);#endif#ifdef__cplusplus}#endif#endif/*_INC_STDDEF*/概述 size_t类型在C
11、标准库的头文件stddef.h的定义:#ifndef_SIZE_T_DEFINEDtypedefunsignedintsize_t;#define_SIZE_T_DEFINED#endifsize_t是标准C库中定义的,32位系统:unsignedint,在64为系统:longunsignedint。 在C++中,设计size_t就是为了适应多个平台的,增强可移植性。size_t是针对系统定制的一种数据类型,一般是整型,因为C/C++标准只定义一最低的位
此文档下载收益归作者所有