Go4Expert

Go4Expert (http://www.go4expert.com/)
-   C (http://www.go4expert.com/forums/c/)
-   -   clarification (http://www.go4expert.com/forums/clarification-t6423/)

punith 19Sep2007 15:17

clarification
 
Hi all

Given the following structure
Code:

typedef struct value_pair {
        char                    name[40];
        int                      attribute;
        int                      type;
        int                    length; /* of strvalue */
        uint32_t              lvalue;
        LRAD_TOKEN    operator;
        uint8_t                strvalue[MAX_STRING_LEN];
        ATTR_FLAGS      flags;
        struct value_pair  *next;
} VALUE_PAIR;

I am not understanding this small function
Code:

void pairadd(VALUE_PAIR **first, VALUE_PAIR *add)
{
        VALUE_PAIR *i;

        if (*first == NULL) {
                *first = add;
                return;
        }
        for(i = *first; i->next; i = i->next)
                ;
        i->next = add;
}

what for loop is doing???
this function is called in the following sequence
pairadd(&list, vp); where list and vp are again pointers of type VALUE_PAIR

thanks in advance

regards
punith

DaWei 19Sep2007 19:08

Re: clarification
 
The for loop is moving through the linked list until it reaches the end, as indicated by the next pointer being null.

Now, you've gotten your free help. Perhaps you could do a favor in return. USE CODE TAGS AROUND YOUR CODE. If you haven't read the "Before you post a query" thread, yet, please do that. Anything less is rude to your potential (free) helpers.

punith 19Sep2007 19:37

Re: clarification
 
Ok


All times are GMT +5.5. The time now is 16:52.