Annotation of researchv10no/cmd/spitbol/cint/arg2scb.c, revision 1.1

1.1     ! root        1: 
        !             2: 
        !             3: /*
        !             4:        arg2scb( req,argc,argv,scptr ) returns the req-th argument pointed
        !             5:        to by the argv array in the scblk provided. if req is out of range
        !             6:         -1 is returned; otherwise the argument's length is returned.
        !             7: */
        !             8: 
        !             9: #include "spitblks.h"
        !            10: 
        !            11: int    arg2scb( req,argc,argv,scptr )
        !            12: 
        !            13: int    req;
        !            14: int    argc;
        !            15: char   *argv[];
        !            16: struct scblk   *scptr;
        !            17: 
        !            18: {
        !            19:        int     ch, i = 0, maxlen;
        !            20:        register char   *argcp, *scbcp;
        !            21: 
        !            22:        if ( (req < 0) || (req >= argc) )
        !            23:                return  -1;
        !            24: 
        !            25:        argcp   = argv[req];
        !            26:        maxlen  = scptr->len - 1;
        !            27:        scbcp   = scptr->str;
        !            28:        while ( i < maxlen ) {
        !            29:                ch      = *argcp++;
        !            30:                if (ch == 0)
        !            31:                        break;
        !            32:                *scbcp++ = ch;
        !            33:                i++;
        !            34:        }
        !            35:        scptr->len = i;
        !            36:        return  i;
        !            37: }
        !            38: 

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.