Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

ÔÚEclipseÖпª·¢C/C++ÏîÄ¿ תÌû


C/C++ development with the Eclipse Platform
Pawel Leszek
 
ÕªÒª:ͨ¹ý±¾ÎÄÄ㽫»ñµÃÈçºÎÔÚEclipseƽ̨ÉÏ¿ª·¢C/C++ÏîÄ¿µÄ×ÜÌåÈÏʶ¡£ËäÈ»EclipseÖ÷Òª±»ÓÃÀ´¿ª·¢JavaÏîÄ¿£¬µ«ËüµÄ¿ò¼ÜʹµÃËüºÜÈÝÒ×ʵÏÖ¶ÔÆäËû¿ª·¢ÓïÑÔµÄÖ§³Ö¡£ÔÚÕâÆªÎÄÕÂÀÄ㽫ѧ»áÈçºÎʹÓÃCDT(C/C++ Development Toolkit)£¬Ò»¸öÔÚEclipseƽ̨ÉÏ×îÊÊÓõÄC/C++¹¤¾ß°ü¡£
 
C/C++ÓïÑÔÊÇÊÀ½çÉÏ×îÁ÷ÐеijÌÐò¿ª·¢ÓïÑÔ£¬ËùÒÔEclipseÌṩ¶ÔC/C++ÓïÑÔµÄÖ§³ÖÒ²¾Í²»×ãÎªÆæÁË¡£ÓÉÓÚEclipseÖ»ÊÇΪ¿ª·¢¹¤¾ßÌṩһ¸ö¿ò¼Ü£¬ËùÒÔËü±ØÐë½èÖúÍⲿ²å¼þµÄÐÎʽʵÏÖ¶ÔC/C++ÓïÑԵļä½ÓÖ§³Ö¡£ÕâÆªÎÄÕ¸æËßÄãÈçºÎʹÓÃCDT£¬Ò»¸öÓÃÓÚEclipseƽ̨µÄC/C++¿ª·¢µÄ²å¼þ×é¡£CDTÏîÄ¿(¼û±¾ÎĺóÃæµÄResource²¿·Ö)µÄÄ¿±êÊÇΪEclipseƽ̨Ìṩһ¸öÍêÈ«ÒâÒåÉϵÄC/C++¼¯³É¿ª·¢»·¾³¡£ËäÈ»Õû¸öÏîĿרעÓÚLinuxƽ̨£¬µ«Êµ¼ÊÉÏ£¬ÔÚÄÇЩÌṩÁËGNU¿ª·¢¹¤¾ßµÄƽ̨ÉÏ£¬CDT¶¼¿ÉÒÔÔËÐеúܺ㬰üÀ¨Win32(Win 95/98/Me/NT/2000/XP)£¬QNX NeutrinoºÍSolarisƽ̨µÈ¡£
CDTÊÇÒ»¸ö¿ªÔ´ÏîÄ¿(»ùÓÚCPL)£¬´¿´âÓÉJavaÓïÑÔʵÏÖ¡£ÕâЩ²å¼þÔÚEclipse¹¤×÷ÇøÖÐÌí¼ÓÁËÒ»¸öC/C++¿ª·¢Êӽǣ¬°üÀ¨Ò»ÏµÁеÄÊÓͼ(Views)ºÍÏòµ¼(Wizards)£¬ÒÔ¼°Ò»Ð©¸ß¼¶µÄ±à¼­ºÍµ÷ÊÔÖ§³ÖµÈ£¬ÒÔʵÏÖ¶ÔC/C++¿ª·¢µÄÈ«ÃæÖ§³Ö¡£
ÓÉÓÚÆä¸´ÔÓÐÔ£¬CDT±»·Ö¸îΪÈô¸É¸ö×é¼þ£¬Ã¿Ò»¸ö×é¼þ¶¼ÒÔÒ»¸ö¶ÀÁ¢²å¼þµÄÐÎʽ´æÔÚ¡£Ã¿¸ö×é¼þ¶¼ÊÇÒ»¸ö¶ÀÁ¢µÄÏîÄ¿£¬ÓÐ×Ô¼ºµÄÌá½»Õß¡¢³ô³æ·ÖÀàºÍÓʼþÁбíµÈ¡£µ«ÊÇ£¬Ã¿¸ö×é¼þ¶¼ÊÇCDTÕý³£ÔËÐв»¿É»òȱµÄ¡£ÏÂÃæÊÇÒ»¸öÍêÕûµÄCDT²å¼þÁбí:
 
l         Primary CDT plug-in: ÎªCDT²å¼þÌṩһ¸ö¿ò¼Ü£»
l         CDT Feature Eclipse: CDTµÄÌØÐÔ×é¼þ£»
l         CDT Core: ÌṩºËÐÄÄ£ÐÍ¡¢CDOMºÍºËÐÄ×é¼þ£»
l         CDT UI: CDTµÄºËÐÄUI¡¢ÊÓͼ¡¢±à¼­Æ÷¡¢Ïòµ¼£»
l         CDT Launch: ÎªÍⲿ¹¤¾ßÖîÈç±àÒëÆ÷ºÍµ÷ÊÔÆ÷ÌṩLaunch»úÖÆ£»
l         CDT Debug Core: Ìṩµ÷ÊÔ¹¦ÄÜ£»
l         CDT Debug UI: ÎªCDTµ÷ÊԱ༭Æ÷¡¢ÊÓͼºÍÏòµ¼ÌṩÓû§½çÃæ£»
l   &nbs


Ïà¹ØÎĵµ£º

C/C++»ù±¾Êý¾ÝÀàÐÍ

ÁËCÈ»ºóC++£¬È»ºóMFC/Windows,È»ºóÊÇC#,ÆäÖÐÊý¾ÝÀàÐͺܶ࣬ÓÉ»ù±¾ÀàÐÍÑÜÉúµÄtypedefÀàÐÍÒ²N¶à¡£ÊìÖª»ù±¾Êý¾ÝÀàÐÍÊÇÎÒÃÇÕýÈ·±í´ïʵ¼ÊÎÊÌâÖи÷ÖÖÊý¾ÝµÄǰÌᣬÒò´ËÎÒ·ÖÀà×ܽáÁËÒ»ÏÂC/C++/Windows /C#»ù±¾Êý¾ÝÀàÐÍ£¬ÒÔ±ãÈÕºó²éÔÄ¡£
         ANSI C/C++»ù±¾Êý¾ÝÀàÐÍ£º
Type
Size
Ê ......

C++ÖÐextern ¡°C¡±º¬ÒåÉî²ã̽Ë÷

1.ÒýÑÔ
¡¡¡¡C++ÓïÑԵĴ´½¨³õÖÔÊÇ“a better C”£¬µ«ÊÇÕâ²¢²»Òâζ×ÅC++ÖÐÀàËÆCÓïÑÔµÄÈ«¾Ö±äÁ¿ºÍº¯ÊýËù²ÉÓõıàÒëºÍÁ¬½Ó·½Ê½ÓëCÓïÑÔÍêÈ«Ïàͬ¡£×÷ΪһÖÖÓûÓëC¼æÈݵÄÓïÑÔ£¬C++±£ÁôÁËÒ»²¿·Ö¹ý³ÌʽÓïÑÔµÄÌØµã£¨±»ÊÀÈ˳ÆÎª“²»³¹µ×µØÃæÏò¶ÔÏ󔣩£¬Òò¶øËü¿ÉÒÔ¶¨Òå²»ÊôÓÚÈκÎÀàµÄÈ«¾Ö±äÁ¿ºÍº¯Êý¡£µ«ÊÇ£¬C++±Ï¾ ......

GNU/Linuxƽ̨µÄC³ÌÐò¿ª·¢¼°³ÌÐòÔËÐл·¾³

±¾ÎĽéÉÜÔÚGNU/Linux»·¾³ÏÂÒ»¸öC³ÌÐòÓÉÔ´´úÂëµ½³ÌÐò£¬µ½¼ÓÔØÔËÐУ¬×îºóÖÕÖ¹µÄ¹ý³Ì¡£Í¬Ê±ÒԴ˹ý³ÌÎªÔØÌ壬½éÉÜGNU/Linuxƽ̨ÏÂÈí¼þ¿ª·¢¹¤¾ßµÄʹÓá£
 
±¾ÎÄÒÔÎÒÃÇ×î³£¼ûµÄhello, world!ΪÀý£º
 
#include <stdio.h>
main ()
{
      printf(“hello, world!\n” ......

CÏÝÚ壺ÅжϺêÊÇ·ñµÈÓÚÒ»¸ö³£Êý

ÏÂÃæÕâ¶Î´úÂëÓÐɶ´íÎó£¿
#if ULONG_MAX == 0xFFFFFFFF
inline unsigned long byte_swap(unsigned long x) { return __builtin_bswap32(x); }
inline long byte_swap(long x) { return __builtin_bswap32(x); }
#else
inline unsigned long byte_swap(unsigned long x) { return __builtin_bswap64(x); }
inline long ......

extern "C"

extern "C" °üº¬Ë«Öغ¬Ò壬´Ó×ÖÃæÉϼ´¿ÉµÃµ½£ºÊ×ÏÈ£¬±»ËüÐÞÊεÄÄ¿±êÊÇ“extern”µÄ£»Æä´Î£¬±»ËüÐÞÊεÄÄ¿±êÊÇ“C”µÄ¡£ÈÃÎÒÃÇÀ´Ïêϸ½â¶ÁÕâÁ½Öغ¬Òå¡£
¡¡¡¡£¨1£© ±»extern "C"ÏÞ¶¨µÄº¯Êý»ò±äÁ¿ÊÇexternÀàÐ͵ģ»
¡¡¡¡externÊÇC/C++ÓïÑÔÖбíÃ÷º¯ÊýºÍÈ«¾Ö±äÁ¿×÷Ó÷¶Î§£¨¿É¼ûÐÔ£©µÄ¹Ø¼ü×Ö£¬¸Ã¹Ø¼ü×Ö¸æËß±àÒ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ