ciao a tutti spero possiate aiutarmi. volevo chiedervi se sapete spiegarmi come interpretare la condizione del while in questi blocchi di programma, non riesco a venirne a capo.
grazie
codice:
bool inlist(const L& l,const E & e) {
    L temp=l;
    bool trovato=false;
    while (temp && !trovato) {
        if (e==temp->elem) trovato=true;
        else
            temp=temp->punt;
    }
    return trovato;




void append(L& l,const E & e) {
    if(l==0) push(l,e);
    else {
        L temp=l;
        L q=new Record;
        q->elem=e;
        q->punt=0;
        while(temp->punt) temp=temp->punt;
        temp->punt=q;
    }