判斷操作系統
通過使用內置的宏,可以進行操作系統判斷
- 1.windows下內置了宏 WIN32
- 2.linux下內置宏 linux
- 3.Solaris下內置宏 __sun
編譯器判斷
- VC編譯器宏 _MSC_VER
- GCC/G++編譯器宏 __GNUC__
- SunCC編譯器宏 __SUNPRO_C和__SUNPRO_CC
字符串比較
在linux下使用strcasecmp 代替 window下的stricmp函數。可以使用以下代碼解決兼容性
-
-
-
-
int stricmp(const char * s1,const char *s2)
-
{
-
return strcasecmp(s1,s2);
-
}
-
sleep函數
執行掛起一段時間,在VC中使用頭文件#include <Windows.h>,爲Sleep,單位爲毫秒
在gcc編譯器中,頭文件爲#include <unistd.h>,爲sleep,單位爲秒,如果需要跟更精確,可以使用usleep.
memset ,strlen, memcpy 在此作用域中尚未聲明
在程序移植到linux下是會出現memset在此作用於中尚未聲明的錯誤,請包含進 #include <string.h>