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

C ÓïÑÔµÄÃæÏò¶ÔÏó

C ÓïÑÔµÄÃæÏò¶ÔÏó
ÈçǰËù˵£¬ÃæÏò¶ÔÏóÊÇÒ»ÖÖÈí¼þÉè¼ÆµÄ˼Ï룬ÊÇÓïÑÔÎ޹صġ£ÔÚ±¾½ÚÖУ¬ÎÒ¾ÙÒ»¸öÁ´±í(list) µÄÀý×ÓÀ´ËµÃ÷ÈçºÎÔÚ C ÓïÑÔÖеÄÉè¼Æ³öÓÐÃæÏò¶ÔÏó·ç¸ñµÄ´úÂë¡£
¶¨Òå½Ó¿Ú
½Ó¿ÚÊÇÃæÏò¶ÔÏóÓïÑÔÖеÄÒ»¸ö±È½ÏÖØÒªµÄ¸ÅÄ½Ó¿ÚÖ»¶ÔÍⲿ³ÐŵʵÏָýӿڵÄʵÌå¿ÉÒÔÍê³ÉʲôÑùµÄ¹¦ÄÜ£¬µ«ÊDz»±©Â¶ÊµÏֵķ½Ê½¡£ÕâÑùµÄºÃ´¦ÊÇ£¬ÊµÏÖÕß¿ÉÒÔÔÚ²»½Ó´¥½Ó¿ÚʹÓÃÕߵĴúÂëµÄÇé¿öÏ£¬¶ÔʵÏÖ½øÐе÷Õû¡£
ÎÒÃÇÀ´¿´¿´Á´±íµÄ½Ó¿Ú¶¨Ò壺
Çåµ¥ 1. Á´±íµÄ½Ó¿Ú¶¨Òå
#ifndef _ILIST_H
  #define           _ILIST_H
   // ¶¨ÒåÁ´±íÖеĽڵã½á¹¹
  typedef struct node{
    void *data;
    struct node *next;
  }Node;
   // ¶¨ÒåÁ´±í½á¹¹
  typedef struct list{
    struct list *_this;
    Node *head;
    int size;
    void (*insert)(void *node);// º¯ÊýÖ¸Õë
    void (*drop)(void *node);
    void (*clear)();
    int (*getSize)();
    void* (*get)(int index);
    void (*print)();
  }List;
   void insert(void *node);
  void drop(void *node);
  void clear();
  int getSize();
  void* get(int index);
  void print();
   #endif   /* _ILIST_H */
  IList ½Ó¿ÚÖУ¬¿ÉÒÔÇåÎúµÄ¿´µ½£¬¶ÔÓÚÒ»¸ö list ʵÌå ( Ò²¾ÍÊǶÔÏó ) À´Ëµ£¬¿ÉÒÔÔÚÆäÉÏ ½øÐÐ insert, drop, clear, getSize, get(index) ÒÔ¼° print µÈ²Ù×÷¡£
½Ó¿ÚµÄʵÏÖ
Çåµ¥ 2. ¹¹Ôì·½·¨
  Node *node = NULL;
  List *list = NULL;
   void insert(void *node);
  void drop(void *node);
  void clear();
  int getSize();
  void print();
  void* get(int index);
   List *ListConstruction(){
    list = (List*)malloc(sizeof(List));
    node = (Node*)malloc(sizeof(Node));
    list->head = node;
    list->insert = insert;// ½« insert º¯ÊýʵÏÖ×¢²áÔÚ li


Ïà¹ØÎĵµ£º

C/C++Ö¸Õë

×î½ü¹¤×÷²»½ô£¬³é¿Õ¿´ÁËÏÂC¡¢C++µÄÖ¸Õ룬·¢ÏÖÁËһЩƽʱûעÒâµ½µÄÖ¸ÕëÓ÷¨ºÍÎÊÌâ¡£
1¡¢Ö¸ÕëÒýÓÃ
void func1£¨MYCLASS* &pBuildingElement£©£»
Õ§Ò»¿´£¬¹Ö¹ÖµÄ£¬¿´ÁËϽâÊÍ£¬Ï¸ÏëһϺÍÖ¸ÕëµÄÖ¸ÕëÀàËÆ£º
void func1£¨MYCLASS** pBuildingElement£©£»
¿´ÏÂÃæµÄÀý×Ó£º
...
MyClass* p = new MyClass;
func1(p);
......

¡¾C/C++¡¿C++±ØÐëÖªµÀµÄ»ù´¡ÎÊÌâ

Ò»¡¢¸ÅÊö
1¡¢C++ËäÈ»ÊÇ´ÓCÓïÑÔÖз¢Õ¹µÄ£¬µ«ÆäÖÐÓÐÐí¶àÒªµã£¬ÊÇCÓïÑÔÖÐËùûÓе쬰üÀ¨ÒýÓã¬ÄÚÁªº¯ÊýµÈ£¬ÔÚ´Ë×öÒ»¸ö½éÉÜ¡£
2¡¢¶ÔÓÚC/C++ÖеĻù´¡ÊDZØÐëÒªÏêϸÁ˽âµÄ£¬Äܹ»Éî¿ÌÀí½âÆäº¬ÒåÒÔ¼°ÆäÀ´Ô´£¬ÊÇÒ»¸öÈËÄÚ¹¦Éî¿ÌµÄ±íÏÖ¡£Èç¹ûһЩ»ù´¡µÄÎÊÌ⣬
¶¼Ëµ²»ÉÏÀ´£¬ÓÖÈçºÎ¸øÈËÒÔÐÅÐÄÄØ¡£
¶þ¡¢³£¼ûµÄÎÊÌâ
1¡¢ÎªÊ²Ã´ÒªÊ¹ ......

C/C++ÓïÑÔvoid¼°voidÖ¸ÕëÉî²ã̽Ë÷

1.¸ÅÊö
¡¡¡¡Ðí¶à³õѧÕß¶ÔC/C++ÓïÑÔÖеÄvoid¼°voidÖ¸ÕëÀàÐͲ»ÉõÀí½â£¬Òò´ËÔÚʹÓÃÉϳöÏÖÁËһЩ´íÎó¡£±¾ÎĽ«¶Ôvoid¹Ø¼ü×ÖµÄÉî¿Ìº¬Òå½øÐнâ˵£¬²¢ÏêÊövoid¼°voidÖ¸ÕëÀàÐ͵ÄʹÓ÷½·¨Óë¼¼ÇÉ¡£
2.voidµÄº¬Òå
¡¡¡¡voidµÄ×ÖÃæÒâ˼ÊÇ“ÎÞÀàÐÍ”£¬void *ÔòΪ“ÎÞÀàÐÍÖ¸Õ딣¬void *¿ÉÒÔÖ¸ÏòÈκÎÀàÐ͵ÄÊý¾Ý¡£
¡ ......

extern¼°extern ¡°C¡±Ó÷¨

externÊÇC/C++ÓïÑÔÖбíÃ÷º¯ÊýºÍÈ«¾Ö±äÁ¿×÷Ó÷¶Î§£¨¿É¼ûÐÔ£©µÄ¹Ø¼ü×ÖËü¸æËß±àÒëÆ÷£¬ÆäÉùÃ÷µÄº¯ÊýºÍ±äÁ¿¿ÉÒÔÔÚ±¾Ä£¿é»òÆäËüÄ£¿éÖÐʹÓá£
1¡£¶ÔÓÚextern±äÁ¿À´Ëµ£¬½ö½öÊÇÒ»¸ö±äÁ¿µÄÉùÃ÷£¬Æä²¢²»ÊÇÔÚ¶¨Òå·ÖÅäÄÚ´æ¿Õ¼ä¡£Èç¹û¸Ã±äÁ¿¶¨Òå¶à´Î£¬»áÓÐÁ¬½Ó´íÎó
2¡£Í¨³££¬ÔÚÄ£¿éµÄÍ·ÎļþÖжԱ¾Ä£¿éÌṩ¸øÆäËüÄ£¿éÒýÓõĺ¯ÊýºÍÈ«¾Ö±äÁ ......

Ò»¸öLinuxÏÂCÏ̳߳صÄʵÏÖ

      ʲôʱºòÐèÒª´´½¨Ï̳߳ØÄØ£¿¼òµ¥µÄ˵£¬Èç¹ûÒ»¸öÓ¦ÓÃÐèҪƵ·±µÄ´´½¨ºÍÏú»ÙỊ̈߳¬¶øÈÎÎñÖ´ÐеÄʱ¼äÓַdz£¶Ì£¬ÕâÑùÏ̴߳´½¨ºÍÏú»ÙµÄ´øÀ´µÄ¿ªÏú¾Í²»ÈݺöÊÓ£¬ÕâʱҲÊÇÏ̳߳ظóö³¡µÄ»ú»áÁË¡£Èç¹ûÏ̴߳´½¨ºÍÏú»Ùʱ¼äÏà±ÈÈÎÎñÖ´ÐÐʱ¼ä¿ÉÒÔºöÂÔ²»¼Æ£¬ÔòûÓбØÒªÊ¹ÓÃÏ̳߳ØÁË¡£
   ÏÂÃæÊÇ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ