C/C++·µ»ØÄÚ²¿¾²Ì¬³ÉÔ±µÄÏÝÚå
C/C++·µ»ØÄÚ²¿¾²Ì¬³ÉÔ±µÄÏÝÚå
³Âð©
±³¾°
ÔÚÎÒÃÇÓÃ
C/C++¿ª·¢µÄ¹ý³ÌÖУ¬×ÜÊÇÓÐÒ»¸öÎÊÌâ»á¸øÎÒÃÇ´øÀ´¿àÄÕ¡£Õâ¸öÎÊÌâ¾ÍÊǺ¯ÊýÄںͺ¯ÊýÍâ´úÂëÐèҪͨ¹ýÒ»¿éÄÚ´æÀ´½»»¥£¨±ÈÈ磬º¯Êý·µ»Ø×Ö·û´®£©£¬Õâ¸öÎÊÌâÀ§
Èźͺܶ࿪·¢ÈËÔ±¡£Èç¹ûÄãµÄÄÚ´æÊÇÔÚº¯ÊýÄÚÕ»ÉÏ·ÖÅäµÄ£¬ÄÇôÕâ¸öÄÚ´æ»áËæן¯ÊýµÄ·µ»Ø¶ø±»µ¯Õ»ÊÍ·Å£¬ËùÒÔ£¬ÄãÒ»¶¨Òª·µ»ØÒ»¿éº¯ÊýÍⲿ»¹ÓÐЧµÄÄÚ´æ¡£
ÕâÊÇÒ»¸öÈÃÎÞÊýÈËÀ§ÈŵÄÎÊÌâ¡£Èç¹ûÄãÒ»²»Ð¡ÐÄ£¬Äã¾ÍºÜÓпÉÄÜÔÚÕâ¸öÉÏÃæ·¸´íÎó¡£µ±È»Ä¿Ç°Óкܶà½â¾ö·½·¨£¬Èç¹ûÄãÊìϤһЩ±ê×¼¿âµÄ»°£¬Äã¿ÉÒÔ¿´µ½Ðí¶à¸÷ʽ¸÷ÑùµÄ½â¾ö·½·¨¡£´óÌåÀ´ËµÓÐÏÂÃ漸ÖÖ£º
1£©
ÔÚº¯ÊýÄÚ²¿Í¨¹ýmalloc»ònewÔÚ¶ÑÉÏ·ÖÅäÄڴ棬Ȼºó°ÑÕâ¿éÄÚ´æ·µ»Ø£¨ÒòΪÔÚ¶ÑÉÏ·ÖÅäµÄÄÚ´æÊÇÈ«¾Ö¿É¼ûµÄ£©¡£ÕâÑù´øÀ´µÄÎÊÌâ¾ÍÊÇDZÔÚµÄÄÚ´æÎÊÌâ¡£Òò
Ϊ£¬Èç¹û·µ»Ø³öÈ¥µÄÄÚ´æ²»ÊÍ·Å£¬ÄÇô¾ÍÊÇmemory
Leak¡£»òÕßÊDZ»¶à´ÎÊÍ·Å£¬´Ó¶øÔì³É³ÌÐòµÄcrash¡£ÕâÁ½¸öÎÊÌⶼÏ൱µÄÑÏÖØ£¬ËùÒÔÕâÖÖÉè¼Æ·½·¨²¢²»ÍƼö¡££¨ÔÚһЩWindows
APIÖУ¬µ±Äãµ÷ÓÃÁËһЩAPIºó£¬Äã±ØÐèÒ²Òªµ÷ÓÃËûµÄijЩAPIÀ´ÊÍ·ÅÕâ¿éÄڴ棩
2£©ÈÃÓû§´«ÈëÒ»¿éËû×Ô¼ºµÄÄÚ´æµØÖ·£¬¶øÔÚº¯ÊýÖаÑÒª
·µ»ØµÄÄÚ´æ·Åµ½Õâ¿éÄÚ´æÖС£ÕâÊÇÒ»¸öÄ¿Ç°ÆÕ±éʹÓõķ½Ê½¡£ºÜ¶àWindows
APIº¯Êý»òÊDZê×¼Cº¯Êý¶¼ÐèÒªÄã´«ÈëÒ»¸öbufferºÍÕâ¸öbufferµÄ³¤¶È¡£ÕâÖÖ·½Ê½¶ÔÎÒÃÇÀ´ËµÓ¦¸ÃÊÇÂżû²»ÏÊÁË¡£ÕâÖÖ·½Ê½µÄºÃ´¦¾ÍÊÇÓɺ¯ÊýÍⲿµÄ
³ÌÐòÀ´Î¬»¤Õâ¿éÄڴ棬±È½Ï¼òÏÔÖ±¹Û¡£µ«ÎÊÌâ¾ÍÊÇÔÚʹÓÃÉÏÉÔÐíÓÐЩÂé·³¡£²»¹ýÕâÖÖ·½Ê½°Ñ·¸´íÎóµÄ»úÂʼõµ½ÁË×îµÍ¡£
3£©µÚÈýÖÖ·½Ê½ÏԵñȽÏÁí
À࣬ËûÀûÓÃÁËstaticµÄÌØÐÔ£¬staticµÄÕ»ÄÚ´æÒ»µ©·ÖÅ䣬ÄÇÕâ¿éÄÚ´æ²»»áËæן¯ÊýµÄ·µ»Ø¶øÊÍ·Å£¬¶øÇÒ£¬ËüÊÇÈ«¾Ö¿É¼ûµÄ£¨Ö»ÒªÄãÓÐÕâ¿éÄÚ´æµÄµØ
Ö·£©¡£ËùÒÔ£¬ÓÐһЩº¯ÊýʹÓÃÁËstaticµÄÕâ¸öÌØÐÔ£¬¼´²»ÓÃʹÓöÑÉϵÄÄڴ棬Ҳ²»ÐèÒªÓû§´«ÈëÒ»¸öbufferºÍÆ䳤¶È¡£´Ó¶ø£¬Ê¹ÓõÃ×Ô¼ºµÄº¯Êý³¤µÃºÜ
ƯÁÁ£¬Ò²ºÜÈÝÒ×ʹÓá£
ÕâÀÎÒÏë¶ÔµÚÈý¸ö·½·¨½øÐÐһЩÌÖÂÛ¡£Ê¹ÓÃstaticÄÚ´æÕâ¸ö·½·¨¿´ËƲ»´í£¬µ«ÊÇËüÓÐÈÃÄãÏëÏó²»µ½µÄÏÝÚå¡£ÈÃÎÒÃÇÀ´ÓÃÒ»¸öʵ¼Ê·¢ÉúµÄ°¸ÀýÀ´¾ÙÒ»¸öÀý×Ó°É¡£
ʾÀý
Óйýsocket±à³Ì¾ÑéµÄÈËÒ»¶¨ÖªµÀÒ»¸öº¯Êý½Ð£ºinet_ntoa£¬Õâ¸öº¯ÊýÖ÷ÒªµÄ¹¦ÄÜÊÇ°ÑÒ»¸öÊý×ÖÐ͵ÄIPµØַת³É×Ö·û´®£¬Õâ¸öº¯ÊýµÄ¶¨ÒåÊÇÕâÑùµÄ£¨×¢ÒâËüµÄ·µ»ØÖµ£©£º
char *inet_ntoa(struct in_addr in);
ÏÔÈ»£¬Õâ¸öº¯Êý²»»á·ÖÅä¶ÑÉϵÄÄڴ棬¶øËûÓÖûÓÐÈÃÄã´«Ò»ÏÂ×Ö·û´®µÄbuffer½øÈ룬ÄÇ
ôËûÒ»¶¨Ê¹ÓÓ·µ»Østatic
char[
Ïà¹ØÎĵµ£º
oracleÖÐpro*cµÄѧϰ
¡¡Ò» Pro*C ³ÌÐò¸ÅÊö£º
1£®Ê²Ã´ÊÇPro*C³ÌÐò
ÔÚORACLEÊý¾Ý¿â¹ÜÀíºÍϵͳÖУ¬ ÓÐÈýÖÖ·ÃÎÊÊý¾Ý¿âµÄ·½·¨£»
£¨1£© ÓÃSQL*Plus£¬ ËüÓÐSQLÃüÁîÒÔ½»»¥µÄÓ¦ÓóÌÐò·ÃÎÊÊý¾Ý¿â£»
£¨2£© ÓõÚËÄ´úÓïÑÔÓ¦Óÿª·¢¹¤¾ß¿ª·¢µÄÓ¦ÓóÌÐò·ÃÎÊÊý¾Ý¿â£¬ÕâЩ¹¤¾ßÓÐSQL*froms£¬QL*Reportwriter,SQL*MenuµÈ£»
£¨3£© ÀûÓÃÔÚ ......
1£© º¯ÊýÉùÃ÷
l CÈç¹û²»Ð´·µ»ØÖµ£¬Ä¬ÈÏÊÇint£¬¶øC++Öв»Äܲ»Ð´·µ»ØÖµ(¿ÉÓÃvoid±íʾÎÞ·µ»ØÖµ)¡£
ÈçFunc1();
l int Func1()ÔÚCÖбíʾ¿É´øÈÎÒâ²ÎÊýµÄº¯Êý£¬ÕâÊÇCµÄ©¶´£¬Ê¹µÃËü±Ü¿ªÁ˲ÎÊýÀàÐͼì²é£»¶øC++Öбíʾ²»´ ......
ÔÚPOSIXÖУ¬±ãÓÐ×ÅÖ§³ÖÕýÔò±í´ïʽµÄϵͳº¯Êý¡£GNU/LinuxÓÐÁ½Ì׿â¿ÉÓÃÓÚÕýÔò±í´ïʽ±à³Ì£ºPOSIX¿âºÍPCRE¿â¡£Ç°Õß²»ÐèÒªµ¥¶À°²×°£¬Ò»°ãÐèÇó»¹ÊÇÄÜÂú×ãµÄ£¬ËÙ¶ÈÉÔÂýЩ¡£ºóÕßÊǾøºÊ¢ÃûµÄPerlÕýÔò±í´ïʽ¿â£¬¹¦ÄÜÇ¿´ó£¬Æ¥ÅäËٶȿ죬²»¹ý¿ÉÄÜÐèÒªµ¥¶À°²×°¡£
int regcomp (regex_t *compiled, const char *pattern, int cflags)
& ......
C/C++
Í·ÎļþÒ»ÀÀ
//////////////////////////////////////////////////////////////////////////
C
Í·Îļþ
(C89,C95)
(C++98,C++03Ò²°üº¬)
include <assert.h>¡¡¡¡¡¡¡¡//Õï¶Ï¿â
include <ctype.h>¡¡¡¡¡¡¡¡ //×Ö·û´¦Àíº¯Êý¿â
include <errno.h>¡¡¡¡¡¡¡¡ //´íÎó¶¨Òå
include <float.h& ......
ÔÚCÓïÑÔÖУ¬ÐÞÊηûexternÓÃÔÚ±äÁ¿»òÕߺ¯ÊýµÄÉùÃ÷Ç°£¬ÓÃÀ´ËµÃ÷“´Ë±äÁ¿/º¯ÊýÊÇÔڱ𴦶¨ÒåµÄ£¬ÒªÔÚ´Ë´¦ÒýÓÔ¡£
Ò».externÐÞÊαäÁ¿µÄÉùÃ÷
¾ÙÀýÀ´Ëµ£¬Èç¹ûÎļþa.cÐèÒªÒýÓÃb.cÖбäÁ¿int v£¬¾Í¿ÉÒÔÔÚa.cÖÐÉùÃ÷extern int v£¬È»ºó¾Í¿ÉÒÔÒýÓñäÁ¿v¡£ÕâÀïÐèҪעÒâµÄÊÇ£¬±»ÒýÓõıäÁ¿vµÄÁ´½ÓÊôÐÔ±ØÐëÊÇÍâÁ´½Ó£¨external£ ......