²»¿ÉС¿´µÄextern "C"
ÏîÄ¿ÖÐÒªÓõ½Ò»¸öÄ£¿é¡£¿´ÁËϸÃÄ£¿éµÄÓ÷¨£¬¾ÍÒÀºù«»Æ°µÄ°áµ½×Ô¼ºµÄ´úÂëÀïÃæÀ´ÁË¡£²»¹ýÔÚ±àÒëµÄʱºòÅöµ½ÁËÂé·³£¬ ÔÚ³ÌÐòÁ´½ÓµÄʱºò³ö´í£º“undefined reference to***",Ó¦¸ÃÊÇÒòΪûÓаüº¬ÏàÓ¦µÄ¿âÎļþ°É¡£
ÓÚÊDZȽÏÁËmake fileÎļþµÄд·¨£¬ÊÔͼÔÚÎÒÕâ±ßµÄmakefile ÖмÓÉÏÏàÓ¦µÄ¿â¡£µ«ÊÇÕÛÌÚÁË°ëÌ죬δ½â¾ö¡£ÔÚÍøÉÏËÑÁË°ëÌ죬ûÓеãÍ·Ð÷£¬ºöȻһ¸öÌû×ÓÖеÄÒ»¾ä»°ÌáÐÑÁËÎÒ£¬“»òÕß¾ÍÊÇc£«£« ºÍc¶ÔͬÃûµÄº¯Êý±àÒë³öµÄº¯ÊýÃû×ÖÊDz»Ò»ÑùµÄ¡£ËùÒÔÄØÒªextern c”¡£¸Ï½ô¿´ÎÒÃǵĴúÂ룡¹ûÈ»£¬ÎÒÒýÓõÄÄ£¿éÊÇÓÃcдµÄ£¬µ«ÊÇËüµÄÏàÓ¦º¯ÊýûÓ÷ÅÔÚextern C{}ÄÚ£»¶øÎÒÕⲿ·ÖÓõÄÊÇC++¡£¡£¡£
ÓÚÊÇÔÚÏàÓ¦²¿Î»¼ÓÉÏ #ifdef __cplusplus
extern "C" {
#endif
ºÍ#ifdef __cplusplus
}
#endif¡£Á´½Óͨ¹ýÁË!
Ò»¸ö¾ÑéÊÇΪÁËc´úÂëÄÜÔÚC++Öз½±ãµÄʹÓã¬Ò»¶¨ÒªÔÚc³ÌÐòÏàӦͷÎļþÖмÓÉÏ extern "C"¡£
Ïà¹ØÎĵµ£º
Õâ¸ö±¾À´ÒÔǰҲд¹ýµÄ£¬½ñÌìÎÞÁĸ´Ï°Ï ÔÙдһ±é¡£¼òµ¥µÄÒ»ËúºýÍ¿£¬Ð´µÄ²»Õ¦µØ´ó¼Ò¼ûÁÂŶ£¡ÓпÕÔÙ¼ÓÇ¿ ºÙºÙ£¡
#include <stdio.h>
#include <stdlib.h>
#include <sys/socket.h>
#include <time.h>
#include <sys/types.h>
#include <netinet/in.h>
#include <netdb.h ......
Ç°Á½ÌìдC++ʵϰ×÷Òµ£¬Í»È»·¢ÏÖI/OÊÇÄÇôµÄÄ°Éú£¬´òÁ˺ó¤Ê±¼äµÄÎļþ¶¼Ã»Óдò¿ª£¬½ñÌìÖÕÓÚÓеãʱ¼äÁË£¬¾ö¶¨ÕÒ±¾Ê飬ºÃºÃÕûÀíһϣ¬ºÍ´ó¼Ò¹²Ïí¡£
C++I/O
C++Ö§³ÖÁ½ÖÖI/O£¬µÚÒ»ÖÖÊÇ´ÓCÓïÑԼ̳ÐÀ´µÄ£¬Ò»ÖÖÊÇÓÉC++¶¨ÒåµÄÃæÏò¶ÔÏóI/Oϵͳ¡£
1¡¢int getchar(void);·µ»ØÒ»¸öÕûÊýÖµ£¬Ò²¿ÉÒÔÖ¸¶¨Õâ¸öֵΪchar±äÁ¿£¬ÒòΪÕâ¸ö×Ö·û°ü ......
1¡¢¶þάָÕëµÄÓ÷¨ËµÃ÷
a[i]´ÓÐÎʽÉÏ¿´ÊÇaÊý×éÖеĵÚi¸öÔªËØ¡£
Èç¹ûaÊÇһάÊý×飬Ôòa[i]´ú±íaÊý×éµÚi¸öÔªËØËùÕ¼µÄÄÚ´æµ¥ÔªµÄÄÚÈÝ¡£a[i]ÊÇÓÐÎïÀíµØÖ·µÄ£¬ÊÇÕ¼ÄÚ´æµ¥ÔªµÄ¡£
µ«Èç¹ûaÊǶþάÊý×飬Ôòa[i]ÊÇ´ú±íһάÊý×éÃû¡£ËüÖ»ÊÇÒ»¸öµØÖ·£¨ÈçͬһάÊý×éÃûÖ»ÊÇÒ»¸öÖ¸Õë³£Á¿Ò»Ñù£©¡£a£¬a+i£¬a[i], *(a+i), *(a+i)+j, a[i]+j¶¼Ê ......
ÖØÒªµÄ¼¸µã£º
ÈκÎÒ»¸öÂß¼ÔËËã·ûµÄÓÅÏȼ¶µÍÓÚÈκÎÒ»¸ö¹ØϵÔËËã·û
ÒÆλÔËËã·ûµÄÓÅÏȼ¶Òª±ÈËãÊýÔËËã·ûµÍ£¬µ«±È¹ØϵÔËËã·û¸ß¡£
º¯Êýµ÷ÓÃÓÅÏȼ¶Òª¸ßÓÚµ¥Ä¿ÔËËã·ûµÄÓÅÏȼ¶¡£È磺pÊÇÒ»¸öº¯ÊýÖ¸Õ룬Ҫµ÷ÓÃpÖ¸ÏòµÄº¯Êý£¬ÐëΪ(*p)()£¬ÈôΪ*p()£¬Ôò±àÒëÆ÷»á½âÊͳÉ*(p())£¬¼´´Ëʱp()ÊÇÒ»¸öº¯Êý¡£ÀàÐÍת»»Êǵ¥Ä¿ÔËËã·û£¬½áºÏÐÔÊÇ×ÔÓ ......