《系统程序员成长计划》学习交流(1)

mac2022-06-30  61

【本栏目的】学习过程中,遇到的问题,在本栏一一记录,希望可以得到指点,交流学习。

【问题描述】

有这样一段代码,

DListNode *dlist_get_node(DList *thiz, size_t index, int fail_return_last) { DListNode *iter = thiz->fisrt; if(iter!=NULL && iter->next!=NULL && index>0) { iter = iter->next; index--; } if(!fail_return_last) { iter = index>0 ? NULL:iter; } return iter; }

当fail_return_last为1时,下列代码不执行:

if(!fail_return_last) { iter = index>0 ? NULL:iter; }

当fail_return_last为0时,执行上述代码。其实就是加了一个对index的判断,看执行了index--后,index是否不再满足index>0的条件。 问题:对fail_return_last标志的判断,是起什么作用呢?希望有高手可以指点一二,相互学习。

转载于:https://www.cnblogs.com/J2EEPLUS/archive/2012/04/06/2487951.html

相关资源:JAVA上百实例源码以及开源项目
最新回复(0)