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

C ÓïÑԺ궨ÒåÓ÷¨×ܽá

 
CÓïÑԺ궨ÒåʵÓÃ×ܽá
 ºê¶¨ÒåÁËÒ»¸ö´ú±íÌØ¶¨ÄÚÈݵıêʶ·û¡£
 Ô¤´¦Àí¹ý³Ì»á°ÑÔ´´úÂëÖгöÏֵĺê±êʶ·ûÌæ»»³Éºê¶¨ÒåʱµÄÖµ¡£
 ºê×î³£¼ûµÄÓ÷¨ÊǶ¨Òå´ú±íij¸öÖµµÄÈ«¾Ö·ûºÅ¡£
 ºêµÄµÚ¶þÖÖÓ÷¨ÊǶ¨Òå´ø²ÎÊýµÄºê£¬ÕâÑùµÄºê¿ÉÒÔÏóº¯ÊýÒ»Ñù±»µ÷Ó㬵«ËüÊÇÔÚµ÷ÓÃÓï¾ä´¦Õ¹¿ªºê£¬²¢Óõ÷ÓÃʱµÄʵ¼Ê²ÎÊýÀ´´úÌæ¶¨ÒåÖеÄÐÎʽ²ÎÊý¡£
 
  1.#defineÖ¸Áî
    #define MAX_NUM 10
    int array[MAX_NUM];
    for(i=0;i<MAX_NUM;i++)  /*……*/
 #define VERSION "Version 1.0 Copyright(c) 2003"
  2.´ø²ÎÊýµÄ#defineÖ¸Áî
  ¡¡#define IS_EVEN(n)   ((n)%2==0)
  ¡¡#define MAX(x,y)     ((x)>(y) ? (x) :(y))
    #define Cube(x) (x)*(x)*(x)
    ¿ÉÒÔÊÇÈκÎÊý×Ö±í´ïʽÉõÖÁº¯Êýµ÷ÓÃÀ´´úÌæ²ÎÊýx¡£
  3.#ÔËËã·û
    #µÄ¹¦ÄÜÊǽ«ÆäºóÃæµÄºê²ÎÊý½øÐÐ×Ö·û´®»¯²Ù×÷£¨Stringfication£©£¬¼òµ¥Ëµ¾ÍÊÇÔÚ¶ÔËüËùÒýÓõĺê±äÁ¿Í¨¹ýÌæ»»ºóÔÚÆä×óÓÒ¸÷¼ÓÉÏÒ»¸öË«ÒýºÅ¡£ÀýÈ磺
        #define _STR(s)     #s
        #define WARN_IF(EXP)    \
        do{ if (EXP)    \
            fprintf(stderr, "Warning: " #EXP "\n"); }   \
        while(0)
        ÄÇôʵ¼ÊʹÓÃÖлá³öÏÖÏÂÃæËùʾµÄÌæ»»¹ý³Ì£º
        WARN_IF (divider == 0);
     ±»Ì滻Ϊ
        do
     {
            if (divider == 0)
          fprintf(stderr, "Warning" "divider == 0" "\n");
        } while(0)


Ïà¹ØÎĵµ£º

CÉî¶È½âÆÊÎÊÌâ´úÂë·ÖÎö±Ê¼Ç1

#include <stdio.h>
int main()
{
int a[5]={1,2,3,4,5};
int *ptr1=(int*)(&a+1);
int *ptr2=(int*)((int)a+1);
printf("%p,%x,%p\n",(int)a,*(ptr2+1),ptr1);//(int*)(&a));
printf("%d\n",(int*)(&a-16));
printf("%d,%x\n",ptr1[-1] ......

C³£Óú¯Êý

¼ì²é¿Õ¸ñ×Ö·û
#include <ctype.h>
int isspace ( int c );
http://www.cplusplus.com/reference/clibrary/cctype/isspace/
Checks if parameter c is a white-space character.For the purpose of this function, standard white-space characters are:
' '
(0x20)
space (SPC)
'\t'
(0x09)
horizontal tab ......

¶Ô±ÈÏÔʾ£¬ÉÐÒ×CÓÊÏäÓÅÓÚ´«Í³ÆóÒµÓÊÏä

¡¡  ÉÐÒ×CÓÊÏäÊÇÒ»¿îÍêÈ«´òÆÆÁËÆóÒµÓÊÏäÒ»¹áģʽµÄвúÆ·¡£ÆóÒµÄܹ»ÍêÈ«×ÔÖ÷¾ö¶¨ÓÊÏäµÄÒ»ÇУ¬Ö»ÒªÊÇÆóÒµÌá³öµÄÐèÇó£¬ÎÞÂÛÊÇ´Óµ¥¶À·þÎñÆ÷¼ÜÉè¡¢¶ÀÏíµÄ´ø¿íÐèÇó¡¢¹¦Ä͍ܵ֯£¬ÒÔ¼°Óë°ì¹«OA²úÆ·»ò²»Í¬Èí¼þµÄÈںϵȣ¬ÉÐÒ×CÓÊÏä¶¼¿ÉÒÔΪÆä×öµ½¡£´ËÍ⣬ÉÐÒ×CÓÊÏ仹»áΪÿ¸öÆóÒµÅäÖÃרÏí¼¼Êõ¹¤³Ìʦ£¬´Ó×î³õµÄ·½°¸Äⶨµ½ºóÆÚµÄ ......

c++/c±à³Ì×¢ÒâÊÂÏî

ÈÝÒ×´íÎóµÄʹÓÃÖ¸Õë:
void GetMemory(char *p, int num)
{
p = (char *)malloc(sizeof(char) * num);
}
void Test(void)
{
char *str = NULL;
GetMemory(str, 100); // str ÈÔȻΪ NULL
strcpy(str, "hello"); // ÔËÐдíÎó
}
벡³öÔÚº¯ÊýGetMemory ÖС£±àÒëÆ÷×ÜÊÇÒ ......

LinuxÏÂC¿ª·¢——gcc£¬gdbµÄʹÓÃ

Linux
ÏÂ
C
¿ª·¢——
gcc
£¬
gdb
µÄʹÓÃ
 
×÷Õߣº
zccst
ÎÒÃÇѧϰµÄ¹ý³ÌÓ¦¸ÃÊÇÒ»¸ö»ýÀ۵Ĺý³Ì£¬ÓÐÎÞµ½ÓУ¬ÓÖÉÙµ½¶à£¬¶ø²»ÄÜÏñÏÂɽµÄºï×Ó¡£
9
Ô·ݵÄʱºòÊǵÚÒ»´Îϵͳѧϰ
gcc, gdb, makefile
£¨Ïê¼ûÇ°Ãæ²©¿Í£©¡£Èç½ñ×÷ΪǶÈëʽϵͳµÄÒ»¸ö×é³É²¿·Ö£¬¾ö¶¨ÖØÑ§Ò»´Î£¬¸Ð¾õÀí½â¼ÓÉîÁËһЩ¡£
gcc ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ