ÉèΪÊ×Ò³ ¼ÓÈëÊÕ²Ø

TOP

C++ÎÊÌâ(Ò»)
2014-11-24 01:25:59 ¡¾´ó ÖРС¡¿ ä¯ÀÀ:262´Î
Tags£ºÎÊÌâ

1. c++ÖÐÖ¸ÕëµÄÓÅȱµãÓÐÄÄЩ
´ð°¸£ºÓŵ㣺
(1)Ìá¸ß³ÌÐòµÄ±àÒëЧÂʺÍÖ´ÐÐËٶȡ£
(2)ͨ¹ýÖ¸Õë¿ÉʹÓÃÖ÷µ÷º¯ÊýºÍ±»µ÷º¯ÊýÖ®¼ä¹²Ïí±äÁ¿»òÊý¾Ý½á¹¹£¬±ãÓÚʵÏÖË«ÏòÊý¾ÝͨѶ¡£
(3)¿ÉÒÔʵÏÖ¶¯Ì¬µÄ´æ´¢·ÖÅä¡£
(4)±ãÓÚ±íʾ¸÷ÖÖÊý¾Ý½á¹¹£¬±àд¸ßÖÊÁ¿µÄ³ÌÐò¡£
ȱµã£º
(1)ʹÓÃδÕýÈ·³õʼ»¯µÄÖ¸Õëµ¼Ö³ÌÐò±ÀÀ£
(2)ÒýÓÃÒÑÊͷŵÄÖ¸Õë
(3)ͨ¹ýÖ¸Õë·ÃÎʲ»¸Ã·ÃÎʵÄÄÚ´æ
2. ºêºÍº¯ÊýµÄÇø±ð
´ð°¸£º(1)ºê×öµÄÊǼòµ¥µÄ×Ö·û´®Ìæ»»(×¢ÒâÊÇ×Ö·û´®µÄÌæ»»£¬²»ÊÇÆäËûÀàÐͲÎÊýµÄÌæ»»)£¬¶øº¯ÊýµÄ²ÎÊýµÄ´«µÝ£¬²ÎÊýÊÇÓÐÊý¾ÝÀàÐ͵ģ¬¿ÉÒÔÊǸ÷ÖÖ¸÷ÑùµÄÀàÐÍ¡£
(2)ºêµÄ²ÎÊýÌæ»»ÊDz»¾­¼ÆËã¶øÖ±½Ó´¦ÀíµÄ£¬¶øº¯Êýµ÷ÓÃÊǽ«Êµ²ÎµÄÖµ´«µÝ¸øÐβΣ¬ÊǼÆËãµÃÀ´µÄ¡£
(3)ºêÔÚ±àÒë֮ǰ½øÐУ¬¼´ÏÈÓúêÌåÌæ»»ºêÃû£¬È»ºóÔÙ±àÒëµÄ£¬¶øº¯ÊýÊDZàÒëÖ®ºó£¬ÔÚÖ´ÐÐʱ£¬²Åµ÷Óõġ£Òò´Ë£¬ºêÕ¼ÓõÄÊDZàÒëµÄʱ¼ä£¬¶øº¯ÊýÕ¼ÓõÄÊÇÖ´ÐÐʱµÄʱ¼ä¡£
(4)ºêµÄ²ÎÊýÊDz»Õ¼ÄÚ´æ¿Õ¼äµÄ£¬ÒòΪֻÊÇ×ö×Ö·û´®µÄÌæ»»£¬¶øº¯Êýµ÷ÓÃʱµÄ²ÎÊý´«µÝÔòÊǾßÌå±äÁ¿Ö®¼äµÄÐÅÏ¢´«µÝ£¬ÐβÎ×÷Ϊº¯ÊýµÄ¾Ö²¿±äÁ¿£¬ÊÇÕ¼ÓÃÄÚ´æµÄ¡£
(5)º¯ÊýµÄµ÷ÓÃÊÇÐèÒª¸¶³öÒ»¶¨µÄʱ¿Õ¿ªÏúµÄ£¬ÒòΪϵͳÔÚµ÷Óú¯Êýʱ£¬Òª±£ÁôÏÖ³¡£¬È»ºóתÈë±»µ÷Óú¯ÊýÈ¥Ö´ÐУ¬µ÷ÓÃÍ꣬ÔÙ·µ»ØÖ÷µ÷º¯Êý£¬´ËʱÔÙ»Ö¸´ÏÖ³¡£¬ÕâЩ²Ù×÷£¬ÏÔÈ»ÔÚºêÖÐÊÇûÓеġ£
3. ºê¶¨ÒåÊÇʲôʱÆÚ´¦ÀíµÄ£¨Ô¤´¦Àí£¿±àÒëÆÚ£¿£©
´ð°¸£ºÔ¤´¦Àí
4. ²»Í¬Çé¿öÏÂÀà¶ÔÏóµÄ´óС£¨ÓÐÊý¾Ý³ÉÔ±£¬ÎÞÊý¾Ý³ÉÔ±£¬ÓÐÐ麯ÊýµÈ£©
´ð°¸£º(1)ÎÞÈκÎÊý¾Ý³ÉÔ±ºÍÐ麯ÊýµÄÀà´óСΪ1
(2)ÿ¸öÐ麯Êý´óСΪ4
(3)³ÉÔ±±äÁ¿´óСҪ¿¼ÂÇÄÚ´æ¶ÔÆ룬ͨ³£ÊÇ4×Ö½Ú¶ÔÆë
5. STLÖÐvectorʹÓõÄʱºòҪעÒâʲô
´ð°¸£º(1) Èç¹ûÔªËØÊǶÔÏóµÄÖ¸Õ룬µ±¸Ãvector³¬³öÆä×÷ÓÃÓò»òµ÷ÓÃeraseɾ³ýÔªËØʱ£¬ÄÇôԪËر¾ÉíÔÚ¸ÃvectorÖлᱻɾ³ý£¬µ«¶ÔÏó±¾Éí²¢Ã»Óеõ½Ïú»Ù¡£ÔÚÕâÖÖÇé¿öÏ£¬Ïú»ÙµÄ¹¤×÷ÒªÓɳÌÐòÔ±×Ô¼ºÀ´×ö¡£
(2) ÓÃeraseɾ³ývectorÈÝÆ÷ÖеÄÔªËضÔÏóʱ£¬ÔªËضÔÏóµÄÎö¹¹º¯Êý»á±»¶à´Îµ÷Óá£
6. ×Ö·ûתÕûÐÍÊýµÄº¯ÊýÊÇʲô£¿ ÊÇÔõÑùʵÏֵģ¿
´ð°¸£º
strtol¡¢strtoul¡£
#define TOLOWER(x) ((x) | 0¡Á20)
#define isxdigit(c) ((¡¯0¡ä <= (c) && (c) <= ¡¯9¡ä) \
|| (¡®a¡¯ <= (c) && (c) <= ¡®f¡¯) \
|| (¡®A¡¯ <= (c) && (c) <= ¡®F¡¯))


#define isdigit(c) (¡¯0¡ä <= (c) && (c) <= ¡¯9¡ä)


unsigned long strtoul(const char *cp,char **endp,unsigned int base)
{
unsigned long result = 0,value;


if (!base) {
base = 10;
if (*cp == ¡¯0¡ä) {
base = 8;
cp++;
if ((TOLOWER(*cp) == ¡®x¡¯) && isxdigit(cp[1])) {
cp++;
base = 16;
}
}
} else if (base == 16) {
if (cp[0] == ¡¯0¡ä && TOLOWER(cp[1]) == ¡®x¡¯)
cp += 2;
}
while (isxdigit(*cp) &&
(value = isdigit(*cp) *cp-¡¯0¡ä : TOLOWER(*cp)-¡¯a'+10) < base) {
result = result*base + value;
cp++;
}
if (endp)
*endp = (char *)cp;
return result;
}
long strtol(const char *cp,char **endp,unsigned int base)
{
if(*cp==¡¯-')
return -strtoul(cp+1,endp,base);
return strtoul(cp,endp,base);
}
INT32S atoi(const INT8S *nptr)//
{
return strtol(nptr, ( INT8S **)NULL, 10);
}
7. ÐéÄâÀàºÍ×îÖÕÀàÄÜ·ñÅÉÉú³ö¶ÔÏó
´ð°¸£ºÐéÄâÀà¿ÉÒÔÅÉÉú¶ÔÏó
8. ÄãÔõôÀí½âÐéÄâÀࣿÐéÄâÀà¿ÉÒÔʵÀý»¯Ò»¸ö¶ÔÏóÂð£¿ÎªÊ²Ã´£¿ËüµÄ×÷ÓúÍÆäËûÀàµÄÇø±ð
´ð°¸£ºÐéÄâÀà¿ÉÒÔÅÉÉú¶ÔÏ󣬴¿ÐéÀ಻¿ÉÒÔʵÀý»¯¶ÔÏó¡£ÒòΪ´¿ÐéÀà´æÔÚ䶨ÒåµÄº¯Êý£¬Ö»ÊǸö¸ÅÄ²»¿ÉÕæʵ´æÔÚ¡£ÐéÄâÀàÓÃ×ö¶à̬£¬´¿ÐéÀà×ö½Ó¿Ú¡£
9. ÄÚÁªº¯ÊýÔõôʵÏֵģ¬Ê²Ã´Ê±ÆÚ´¦ÀíµÄ£¬ÓÅȱµã
´ð°¸£ºÔÚ³ÌÐò±àÒëʱ£¬±àÒëÆ÷½«³ÌÐòÖгöÏÖµÄÄÚÁªº¯ÊýµÄµ÷Óñí´ïʽÓÃÄÚÁªº¯ÊýµÄº¯ÊýÌåÀ´½øÐÐÌæ»»¡£
Óŵ㣺²»»á²úÉúº¯Êýµ÷ÓõĿªÏú
ȱµã£ºÔö¼ÓÄ¿±ê³ÌÐòµÄ´úÂëÁ¿£¬¼´Ôö¼Ó¿Õ¼ä¿ªÏú
10. ÄÚ´æ·ÖÅäµÄ¼¸ÖÖ·½·¨ÓëÌصã
´ð°¸£ºÕ»£º¾ÍÊÇÄÇЩÓɱàÒëÆ÷ÔÚÐèÒªµÄʱºò·ÖÅ䣬ÔÚ²»ÐèÒªµÄʱºò×Ô¶¯Çå³ýµÄ±äÁ¿µÄ´æ´¢Çø¡£ÀïÃæµÄ±äÁ¿Í¨³£ÊǾֲ¿±äÁ¿¡¢º¯Êý²ÎÊýµÈ¡£
¶Ñ£º¾ÍÊÇÄÇЩÓÉnew·ÖÅäµÄÄÚ´æ¿é£¬
×ÔÓÉ´æ´¢Çø£º¾ÍÊÇÄÇЩÓÉmallocµÈ·ÖÅäµÄÄÚ´æ¿é
È«¾Ö/¾²Ì¬´æ´¢Çø£ºÈ«¾Ö±äÁ¿ºÍ¾²Ì¬±äÁ¿±»·ÖÅ䵽ͬһ¿éÄÚ´æÖÐ
³£Á¿´æ´¢Çø£ºÕâÊÇÒ»¿é±È½ÏÌØÊâµÄ´æ´¢Çø£¬ËûÃÇÀïÃæ´æ·ÅµÄÊdz£Á¿£¬²»ÔÊÐíÐÞ¸Ä
11. ¾²Ì¬±äÁ¿¡¢È«¾Ö±äÁ¿¡¢¾Ö²¿±äÁ¿·Ö±ð´æ´¢ÓÚʲôλÖÃ
´ð°¸£º¾²Ì¬±äÁ¿£ºÈ«¾Ö/¾²Ì¬´æ´¢Çø
È«¾Ö±äÁ¿£ºÈ«¾Ö/¾²Ì¬´æ´¢Çø
¾Ö²¿±äÁ¿£ºÕ»
12. staticÈ«¾Ö±äÁ¿ÓëÆÕͨȫ¾Ö±äÁ¿µÄÇø±ð£¿static¾Ö²¿±äÁ¿ÓëÆÕͨ±äÁ¿µÄÇø±ð£¿staticº¯ÊýÓëÆÕͨº¯ÊýµÄÇø±ð
´ð°¸£º
staticÈ«¾Ö±äÁ¿ÓëÆÕͨµÄÈ«¾Ö±äÁ¿ÓÐʲôÇø±ð£ºstaticÈ«¾Ö±äÁ¿Ö»³õʹ»¯Ò»´Î£¬²¢ÇÒÔÚÆäËûÎļþµ¥ÔªÖв»¿É±»ÒýÓÃ
static¾Ö²¿±äÁ¿ºÍÆÕͨ¾Ö²¿±äÁ¿ÓÐʲôÇø±ð£ºstatic¾Ö²¿±äÁ¿Ö»±»³õʼ»¯Ò»´Î£¬ÖµÔÚ³ÌÐòÉú´æÆÚÓÐЧ
staticº¯ÊýÓëÆÕͨº¯ÊýÓÐʲôÇø±ð£ºstaticº¯ÊýÔÚÄÚ´æÖÐÖ»ÓÐÒ»·Ý£¬ÆÕͨº¯ÊýÔÚÿ¸ö±»µ÷ÓÃÖÐά³ÖÒ»·Ý¿½±´
13. Ð麯ÊýµÄ»úÖÆ£¬ÔõôÀí½â¡£ÓëÆäËüº¯ÊýµÄÇø±ð£¬ÈçÖØÔØ
´ð°¸£ºÐ麯ÊýÔÚc++ÖеÄʵÏÖ»úÖƾÍÊÇÓÃÐé±íºÍÐéÖ¸Õë
ÆÕͨº¯Êý±àÒëʱ°ó¶¨£¬Ð麯ÊýÔËÐÐʱ°ó¶¨
14. дһ¸ö¸´ÖÆ×Ö·û´®µÄ·½·¨£¬ÒªÇóÖ»ÄÜʹÓûù±¾ÀàÐÍ£¬ÓÃcharÊý×é±íʾ×Ö·û´®
´ð°¸£º
char * strcpy(char * strDest,const char * strSrc)
{
if ((strDest==NULL)||(strsrc=¡±/=NULL¡±)) //[1]
throw ¡°Invalid argument(s)¡±; //[2]
char * strDestCopy=strDest; //[3]
while ((*strDest++=*strSrc++)!=¡¯\0¡ä); //[4]
return strDestCopy;
}
[1]
(A)²»¼ì²éÖ¸ÕëµÄÓÐЧÐÔ£¬ËµÃ÷´ðÌâÕß²»×¢ÖØ´úÂëµÄ½¡×³ÐÔ¡£
(B)¼ì²éÖ¸ÕëµÄÓÐЧÐÔʱʹÓÃ((!strDest)||(!strSrc))»ò(!(strDest&&strSrc))£¬ËµÃ÷´ðÌâÕ߶ÔCÓïÑÔÖÐÀàÐ͵ÄÒþʽת»»Ã»ÓÐÉî¿ÌÈÏʶ¡£ÔÚ±¾ÀýÖÐchar *ת»»Îªbool¼´ÊÇÀàÐÍÒþʽת»»£¬ÕâÖÖ¹¦ÄÜËäÈ»Áé»î£¬µ«¸ü¶àµÄÊǵ¼Ö³ö´í¸ÅÂÊÔö´óºÍά»¤³É±¾Éý¸ß¡£ËùÒÔC++רÃÅÔö¼ÓÁËbool¡¢true¡¢falseÈý¸ö¹Ø¼ü×ÖÒÔÌṩ¸ü°²È«µÄÌõ¼þ±í´ïʽ¡£
(C)¼ì²éÖ¸ÕëµÄÓÐЧÐÔʱʹÓÃ((strDest==0)||(strsrc=¡±/=0¡å))£¬ËµÃ÷´ðÌâÕß²»ÖªµÀʹÓó£Á¿µÄºÃ´¦¡£Ö±½ÓʹÓÃ×ÖÃæ³£Á¿£¨Èç±¾ÀýÖеÄ0£©»á¼õÉÙ³ÌÐòµÄ¿Éά»¤ÐÔ¡£0ËäÈ»¼òµ¥£¬µ«³ÌÐòÖпÉÄܳöÏֺܶദ¶ÔÖ¸ÕëµÄ¼ì²é£¬ÍòÒ»³öÏÖ±ÊÎ󣬱àÒëÆ÷²»ÄÜ·¢ÏÖ£¬Éú³ÉµÄ³ÌÐòÄÚº¬Âß¼­´íÎ󣬺ÜÄÑÅųý¡£¶øʹÓÃNULL´úÌæ0£¬Èç¹û³öÏÖƴд´íÎ󣬱àÒëÆ÷¾Í»á¼ì²é³öÀ´¡£
[2]
(A)return new string(¡°Invalid argument(s)¡±);£¬ËµÃ÷´ðÌâÕ߸ù±¾²»ÖªµÀ·µ»ØÖµµÄÓÃ;£¬²¢ÇÒËû¶ÔÄÚ´æй©ҲûÓо¯ÌèÐÄ¡£´Óº¯ÊýÖÐ

Ê×Ò³ ÉÏÒ»Ò³ 1 2 3 ÏÂÒ»Ò³ βҳ 1/3/3
¡¾´ó ÖРС¡¿¡¾´òÓ¡¡¿ ¡¾·±Ìå¡¿¡¾Í¶¸å¡¿¡¾Êղء¿ ¡¾ÍƼö¡¿¡¾¾Ù±¨¡¿¡¾ÆÀÂÛ¡¿ ¡¾¹Ø±Õ¡¿ ¡¾·µ»Ø¶¥²¿¡¿
ÉÏһƪ£ºÁé´¨¿Æ¼¼ÃæÊÔÌâC# .NET·½ÃæµÄ ÏÂһƪ£º×Ϲ⻪ÓîÃæÊÔÌâ(.Net)

×îÐÂÎÄÕÂ

ÈÈÃÅÎÄÕÂ

Hot ÎÄÕÂ

Python

C ÓïÑÔ

C++»ù´¡

´óÊý¾Ý»ù´¡

linux±à³Ì»ù´¡

C/C++ÃæÊÔÌâÄ¿