C/C++ÖÐö¾ÙÀàÐÍ(enum)
Èç¹ûÒ»¸ö±äÁ¿ÄãÐèÒª¼¸ÖÖ¿ÉÄÜ´æÔÚµÄÖµ£¬ÄÇô¾Í¿ÉÒÔ±»¶¨Òå³ÉΪö¾ÙÀàÐÍ¡£Ö®ËùÒÔ½Ðö¾Ù¾ÍÊÇ˵½«±äÁ¿»òÕ߽жÔÏó¿ÉÄÜ´æÔÚµÄÇé¿öÒ²¿ÉÒÔ˵ÊÇ¿ÉÄܵÄÖµÒ»Ò»Àý¾Ù³öÀ´¡£
¡¡¡¡¾Ù¸öÀý×ÓÀ´ËµÃ÷Ò»°É£¬ÎªÁËÈôó¼Ò¸üÃ÷°×Ò»µã£¬±ÈÈçÒ»¸öǦ±ÊºÐÖÐÓÐÒ»Ö§±Ê£¬µ«ÔÚûÓдò¿ªÖ®Ç°Äã²¢²»ÖªµÀËüÊÇʲô±Ê£¬¿ÉÄÜÊÇǦ±ÊÒ²¿ÉÄÜÊǸֱʣ¬ÕâÀïÓÐÁ½ÖÖ¿ÉÄÜ£¬ÄÇôÄã¾Í¿ÉÒÔ¶¨ÒåÒ»¸öö¾ÙÀàÐÍÀ´±íʾËü£¡
enum box{pencil,pen};//ÕâÀïÄã¾Í¶¨ÒåÁËÒ»¸öö¾ÙÀàÐ͵ıäÁ¿½Ðbox£¬Õâ¸öö¾Ù±äÁ¿ÄÚº¬ÓÐÁ½¸öÔªËØÒ²³ÆÃ¶¾ÙÔªËØÔÚÕâÀïÊÇpencilºÍpen£¬·Ö±ð±íʾǦ±ÊºÍ¸Ö±Ê¡£
¡¡¡¡ÕâÀïҪ˵һÏ£¬Èç¹ûÄãÏ붨ÒåÁ½¸ö¾ßÓÐͬÑùÌØÐÔö¾ÙÀàÐ͵ıäÁ¿ÄÇôÄã¿ÉÒÔÓÃÈçϵÄÁ½ÖÖ·½Ê½½øÐж¨Ò壡
enum box{pencil,pen};
enum box box2;//»òÕß¼òд³Ébox box2;
¡¡¡¡ÔÙÓÐÒ»ÖÖ¾ÍÊÇÔÚÉùÃ÷µÄʱºòͬʱ¶¨Òå¡£
enum {pencil,pen}box,box2; //ÔÚÉùÃ÷µÄͬʱ½øÐж¨Ò壡
¡¡¡¡Ã¶¾Ù±äÁ¿ÖеÄö¾ÙÔªËØÏµÍ³Êǰ´ÕÕ³£Á¿À´´¦ÀíµÄ£¬¹Ê½Ðö¾Ù³£Á¿£¬ËûÃÇÊDz»ÄܽøÐÐÆÕͨµÄËãÊõ¸³ÖµµÄ£¬(pencil=1;)ÕâÑùµÄд·¢ÊÇ´íÎóµÄ£¬µ«ÊÇÄã¿ÉÒÔÔÚÉùÃ÷µÄʱºò½øÐи³Öµ²Ù×÷£¡
enum box{pencil=1,pen=2};
µ«ÊÇÕâÀïÒªÌØ±ð×¢ÒâµÄÒ»µãÊÇ£¬Èç¹ûÄã²»½øÐÐÔªËØ¸³Öµ²Ù×÷ÄÇÃ´ÔªËØ½«»á±»ÏµÍ³×Ô¶¯´Ó0¿ªÊ¼×Ô¶¯µÝÔöµÄ½øÐи³Öµ²Ù×÷£¬Ëµµ½×Ô¶¯¸³Öµ£¬Èç¹ûÄãÖ»¶¨ÒåÁ˵ÚÒ»¸öÄÇôϵͳ½«¶ÔÏÂÒ»¸öÔªËØ½øÐÐǰһ¸öÔªËØµÄÖµ¼Ó1²Ù×÷£¬ÀýÈç
enum box{pencil=3,pen};//ÕâÀïpen¾ÍÊÇ4ϵͳ½«×Ô¶¯½øÐÐpen=4µÄ¶¨Ò帳ֵ²Ù×÷£¡
¡¡¡¡Ç°ÃæËµÁËÄÇô¶à£¬ÏÂÃæ¸ø³öÒ»¸öÍêÕûµÄÀý×Ó´ó¼Ò¿ÉÒÔͨ¹ýÒÔϵĴúÂëµÄѧϰ½øÐиüÍêÕûµÄѧϰ£¡
#include <iostream>
using namespace std;
void main(void)
{
enum egg {a,b,c};
enum egg test; //ÔÚÕâÀïÄã¿ÉÒÔ¼òд³Éegg test;
test = c; //¶Ôö¾Ù±äÁ¿test½øÐи³ÓèÔªËØ²Ù×÷£¬ÕâÀïÖ®ËùÒԽи³ÔªËزÙ×÷²»½Ð¸³Öµ²Ù×÷¾ÍÊÇΪÁËÈôó¼ÒÃ÷°×ö¾Ù±äÁ¿ÊDz»ÄÜÖ±½Ó¸³ÓèËãÊýÖµµÄ£¬ÀýÈç(test=1;)ÕâÑùµÄ²Ù×÷¶¼ÊDz»±»±àÒëÆ÷Ëù½ÓÊܵģ¬ÕýÈ·µÄ·½Ê½ÊÇÏȽøÐÐÇ¿ÖÆÀàÐÍת»»ÀýÈç(test = (enum egg) 0;)£¡
if (test==c)
Ïà¹ØÎĵµ£º
µÚÒ»Õ µ¼ÑÔ
1£¬¶¨Òå(define)ÓëÉùÃ÷(declaration)
¶¨Òå±íʾ´´½¨±äÁ¿»ò·ÖÅä´æ´¢µ¥Ôª£»¶øÉùÃ÷Ö¸µÄÊÇ˵Ã÷±äÁ¿µÄÐÔÖÊ£¬µ«²»·ÖÅä´æ´¢µ¥Ôª¡£
µÚ¶þÕ ÀàÐÍ¡¢ÔËËã·ûºÍ±í´ïʽ
1£¬Êý¾ÝÀàÐͼ°³¤¶È
CÖÐÖ»ÓÐ4ÖÖ»ù±¾Êý¾ÝÀàÐÍ£ºchar ,int ,float ......
¿´µ½Õâ¸öÃæÊÔÌâ,¹À¼ÆºÜ¶à¸ÕѧCÖ¸ÕëµÄͬѧ¶¼»á¸ã´í.
void GetMemory(char *p)
{
// ´«µÝ½øÀ´µÄµÄֵʹµÃ*p==NULL
// ÕâÀïÐ޸ĵÄÊÇÕâ¸öº¯ÊýÄÚµÄÁÙʱָÕë±äÁ¿pµÄÖµ
p = (char *)malloc(100);
}
void Test(void)
{
char *str = NULL;
// ´«µÝ½øÈ¥µÄÊÇstrµÄÖµNULL
GetMemory(str);
// ÕâÀïstrÖ¸Õë² ......
ǰÑÔ
ÔÚ±àд³ÌÐòµÄʱºò,ÎÒÃǾ³£ÒªÓõ½ºê¶¨Òå,ºê¶¨ÒåµÄÒýÈëȷʵ´ó´óÌá¸ßÁ˳ÌÐòµÄ¿É¶ÁÐÔ,¿ÉÒÆÖ²ÐÔ,·½±ãά»¤.......Òò´ËƯÁÁµÄºê¶¨ÒåºÜÖØÒª.....ʹÓú궨ÒåÒ²ÊÇÓÐÒ»¶¨¼¼ÇɵÄ,ÏÂÃæÊǹØÓں궨ÒåµÄһЩºÃµÄ³£Óõķ½·¨,¾Ý˵ÊÇһЩ³ÉÊìµÄÈí¼þÖг£ÓõÄ....ÎÒÌôÁËһЩÎÒÃÇÄܹ»Àí½â¶øÇÒʵÓõãµÄ.... µ«ÊÇ,ʹÓú궨ÒåʱҲҪʮ·ÖСÐÄ,Ó ......
CÓïÑÔÎļþ²Ù×÷½Ó´¥ºÜ¾ÃÁË£¬Ò»Ö±Ã»ÓÐ×ܽáÏà¹ØÄÚÈÝ£¬½ñÌìÓõ½Á˾ÍÈ¥ÕÒÁËÕÒÏà¹ØÄÚÈÝ¡£
ÔÚANSI CÖУ¬¶ÔÎļþµÄ²Ù×÷·ÖΪÁ½ÖÖ·½Ê½£¬¼´Á÷ʽÎļþ²Ù×÷ºÍI/OÎļþ²Ù×÷
typedef struct {
int level; /* fill/empty level of buffer */
unsigned flags; /* File status flags */
char fd; /* File descriptor */
unsigned char hold ......
ʲôÊǻص÷º¯Êý£¿
¡¡¡¡¼ò¶øÑÔÖ®£¬»Øµ÷º¯Êý¾ÍÊÇÒ»¸öͨ¹ýº¯ÊýÖ¸Õëµ÷Óõĺ¯Êý¡£Èç¹ûÄã°Ñº¯ÊýµÄÖ¸Õ루µØÖ·£©×÷Ϊ²ÎÊý´«µÝ¸øÁíÒ»¸öº¯Êý£¬µ±Õâ¸öÖ¸Õë±»ÓÃΪµ÷ÓÃËüËùÖ¸ÏòµÄº¯Êýʱ£¬ÎÒÃǾÍ˵ÕâÊǻص÷º¯Êý¡£
¡¡¡¡ÎªÊ²Ã´ÒªÊ¹Óûص÷º¯Êý£¿
¡¡¡¡ÒòΪ¿ÉÒ԰ѵ÷ÓÃÕßÓë±»µ÷ÓÃÕß·Ö¿ª¡£µ÷ÓÃÕß²»¹ØÐÄËÊDZ»µ÷ÓÃÕߣ¬ËùÓÐËüÐèÖªµÀµÄ£¬Ö»ÊÇ´æÔÚ ......