跨平台判断64位和32位开发的一些宏定义


#ifdef _WIN32
//windows x86 or x68
#ifdef _WIN64 //x64
	typedef uint64_t point_t;
#else //x86
	typedef uint32_t UPoint;
#endif //_WIN64
#else //unix
#ifdef __x86_64__ //x64
#elif __i386__ //x86
#endif
#endif //_WIN32

_WIN32是在Windows32位和64位都会有define的,所以区分64还是32位主要用到的是_WIN64,_WIN32只用作区分是否Windows系统

ANSI C标准中的预定义宏:

__LINE__ // 在源代码中插入当前源代码行号;
__FILE__ // 在源文件中插入当前源文件名;
__FUNCTION__ // 在源文件中插入当前函数名;
__DATE__ // 在源文件中插入当前的编译日期
__TIME__ // 在源文件中插入当前编译时间;
__STDC__ // 当要求程序严格遵循ANSI C标准时该标识被赋值为1;
__cplusplus // 当编写C++程序时该标识符被定义。

//例子
printf("行号:%d 函数名:%s \n", __LINE__, __FUNCTION__);


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM