跨平台判斷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