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