å¦æè¦ç¼å¶å¨ä¸¤ä¸ªç³»ç»ä¸é½è½ä½¿ç¨çå¨æé¾æ¥åºï¼é常ä¼å
éæ©å¨WindowsçVC++æä¾çè°è¯ç¯å¢ä¸å®æåå§çå¼åï¼æ¯ç«VC++æä¾çå¾å½¢åç¼è¾åè°è¯çé¢æ¯viågccæ¹ä¾¿è®¸å¤ãå®ææµè¯ä¹åï¼åè¿è¡å¨æåºçç¨åºç§»æ¤ãé常gccé»è®¤çç¼è¯è§åæ¯VC++é»è®¤çç¼è¯è§åä¸¥æ ¼ï¼å³ä½¿å¨VC++ä¸é¢æ²¡æä»»ä½è¦åé误çç¨åºå¨gccè°è¯ä¸ä¹ä¼åºç°è®¸å¤è¦åé误ï¼å¯ä»¥å¨gccä¸éç¨-wé项å
³éè¦åé误ã
ä¸é¢ç»åºç¨åºç§»æ¤éè¦éµå¾ªçè§å以åç»éªã
(1)å°½éä¸è¦æ¹ååæå¨æåºå¤´æ件ç顺åºãé常å¨C/C++è¯è¨ä¸ï¼å¤´æ件ç顺åºæç¸å½çå
³ç³»ãå¦å¤è½ç¶C/C++è¯è¨åºå大å°åï¼ä½å¨å
å«å¤´æ件æ¶ï¼Linuxå¿
é¡»ä¸å¤´æ件ç大å°åç¸åï¼å 为ext2æ件系ç»å¯¹æ件åæ¯å¤§å°åææï¼å¦åä¸è½æ£ç¡®ç¼è¯ï¼èå¨Windowsä¸é¢ï¼å¤´æ件大å°åå¯ä»¥æ£ç¡®ç¼è¯ã
(2)ä¸åç³»ç»ç¬æç头æ件ãå¨Windowsç³»ç»ä¸ï¼é常ä¼å
æ¬windows.h头æ件ï¼å¦æè°ç¨åºå±çéä¿¡å½æ°ï¼åä¼å
å«winsock..h头æ件ãå æ¤å¨ç§»æ¤å°Linuxç³»ç»æ¶ï¼è¦æ³¨éæè¿äºWindowsç³»ç»ç¬æç头æ件以åä¸äºwindowsç³»ç»ç常éå®ä¹è¯´æï¼å¢å Linuxé½åºå±éä¿¡çæ¯æç头æ件çã
(3)æ°æ®ç±»åãVC++å
·æ许å¤ç¬æçæ°æ®ç±»åï¼å¦__int16ï¼__int32ï¼TRUEï¼SOCKETçï¼gccç¼è¯å¨ä¸æ¯æå®ä»¬ãé常åæ³æ¯éè¦å°windows.håbasetypes.hä¸å¯¹è¿äºæ°æ®è¿è¡å®ä¹çè¯å¥å¤å¶å°ä¸ä¸ªå¤´æ件ä¸ï¼åå¨Linuxä¸å
å«è¿ä¸ªå¤´æ件ãä¾å¦å°å¥æ¥åçç±»å为SOCKETæ¹ä¸ºintã
(4)å
³é®åãVC++ä¸å
·æ许å¤æ åCä¸æ没æéç¨çå
³é®åï¼å¦BOOLï¼BYTEï¼DWORDï¼__asmçï¼é常å¨ä¸ºäºç§»æ¤æ¹ä¾¿ï¼å°½éä¸ä½¿ç¨å®ä»¬ï¼å¦æå®å¨æ æ³é¿å
å¯ä»¥éç¨#ifdef å#endif为LINUXåWINDOWSç¼å两个çæ¬ã
(5)å½æ°ååçä¿®æ¹ãé常å¦æéç¨æ åçC/C++è¯è¨ç¼åçå¨æåºï¼åºæ¬ä¸ä¸ç¨åéæ°ç¼åå½æ°ï¼ä½å¯¹äºç³»ç»è°ç¨å½æ°ï¼ç±äºä¸¤ç§ç³»ç»çåºå«ï¼éè¦æ¹åå½æ°çè°ç¨æ¹å¼çï¼å¦å¨Linuxç¼å¶çç½ç»éä¿¡å¨æåºä¸ï¼ç¨close()å½æ°ä»£æ¿windowsæä½ç³»ç»ä¸çclosesocket()å½æ°æ¥å
³éå¥æ¥åãå¦å¤å¨Linuxä¸æ²¡ææ件å¥æï¼è¦æå¼æ件å¯ç¨openåfopenå½æ°ï¼å
·ä½è¿ä¸¤ä¸ªå½æ°çç¨æ³å¯åèæç®[2]ã
(6)makefileçç¼åãå¨windowsä¸é¢é常ç±VC++ç¼è¯å¨æ¥è´è´£è°è¯ï¼ä½gccéè¦èªå·±å¨æç¼åmakefileæ件ï¼ä¹å¯ä»¥åç
§VC++çæçmakefileæ件ã对äºå¨æåºç§»æ¤ï¼ç¼è¯å¨æåºæ¶éè¦å å
¥-sharedé项ã对äºéç¨æ°å¦å½æ°ï¼å¦å¹çº§æ°çç¨åºï¼å¨è°ç¨å¨æåºæ¯ï¼éè¦å å
¥-lmã
(7)å
¶å®ä¸äºéè¦æ³¨æçå°æ¹
â ç¨åºè®¾è®¡ç»æåæï¼å¯¹äºç§»æ¤å®äººç¼åçå¨æåºç¨åºï¼ç¨åºç»æåææ¯å¿
ä¸å¯å°çæ¥éª¤ï¼é常å¨å¨æåºç¨åºä¸ï¼ä¸ä¼å
å«çé¢çæä½ï¼æ以ç¸å¯¹å®¹æä¸äºã
â¡å¨Linuxä¸ï¼å¯¹æ件æç®å½çæéå为æ¥æè
ã群ç»ãå
¶å®ãæ以å¨ååæ件æ¶ï¼è¦æ³¨æ对æ件æ¯è¯»è¿æ¯åæä½ï¼å¦ææ¯å¯¹æ件è¿è¡åæä½ï¼è¦æ³¨æä¿®æ¹æ件æç®å½çæéï¼å¦åæ æ³å¯¹æ件è¿è¡åã
â¢æéç使ç¨ï¼å®ä¹ä¸ä¸ªæéåªç»å®åé
å个åèçå
åï¼å¦æè¦å¯¹æéææåçåéèµå¼ï¼å¿
é¡»ç¨mallocå½æ°ä¸ºå®åé
å
åæä¸æå®å®ä¹ä¸ºæéèå®ä¹ä¸ºåéå³å¯ï¼è¿ç¹å¨linuxä¸é¢æ¯windowsç¼è¯ä¸¥æ ¼ãåæ ·ç»æä¸è½å¨å½æ°ä¸ä¼ å¼ï¼å¦æè¦å¨å½æ°ä¸è¿è¡ç»æä¼ å¼ï¼å¿
é¡»æå½æ°ä¸çç»æå®ä¹ä¸ºç»ææéã
â£è·¯å¾æ è¯ç¬¦ï¼å¨Linuxä¸æ¯â/âï¼å¨Windowsä¸æ¯â\âï¼æ³¨æLinuxå¨æåºåwindowså¨æåºæ索路å¾çä¸åã
â¤ç¼ç¨åè°è¯æå·§æ¹é¢ã对ä¸åçè°è¯ç¯å¢æä¸åçè°è¯æå·§ï¼å¨è¿éä¸å¤åè¿°ã
温馨提示:答案为网友推荐,仅供参考