標題: 空指針判斷 與 if (pevent == (OS_EVENT *)0) [打印本頁]

作者: niujia    時間: 2015-7-17 00:01
標題: 空指針判斷 與 if (pevent == (OS_EVENT *)0)
                        C語言的空指針是什么意思?:http://www.360doc.com/content/06/0721/14/9577_161464.shtml


#if (OS_EVENT_EN > 0)&& (OS_MAX_EVENTS >0)
typedef struct {
   INT8U  OSEventType;                  
   INT8U  OSEventGrp;                  
   INT16U OSEventCnt;                  
   void  *OSEventPtr;                  
   INT8U  OSEventTbl[OS_EVENT_TBL_SIZE];
} OS_EVENT;
#endif


OS_EVENT  *pevent;
OS_EXT OS_EVENT        *OSEventFreeList;
pevent            =OSEventFreeList;   
if (pevent ==(OS_EVENT *)0)
對于這句話,我一直理解是pevent指向的結(jié)構(gòu)體成員值為零,可這樣理解就不正確了,如果各成員為零,那就是個空閑的指針了剛好符合程序的要求啊,可接下來是:
*err              = OS_ERR_PEVENT_NULL;
意思是指針不存在了
因此我看了文章開始鏈接中關(guān)于空指針說明后,才知道這句話是判斷該指針是否是空指針,空指針就是定義了沒有指向具體地址的指針。







歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1