Annotation of coherent/a/usr/src/misc/skip.c, revision 1.1

1.1     ! root        1: /*
        !             2:  * One or more characters not matching some criterion.
        !             3:  * skip(s1, matcher, fin)
        !             4:  */
        !             5: #include <stdio.h>
        !             6: char *
        !             7: skip(s1, matcher, fin)
        !             8: register char *s1;
        !             9: int (*matcher)();
        !            10: register char **fin;
        !            11: {
        !            12:        char c;
        !            13:        char *start = s1;
        !            14: 
        !            15:        for(*fin = NULL; (c = *s1++) && !(*matcher)(c); *fin = s1)
        !            16:                ;
        !            17:        if(NULL == *fin)
        !            18:                return(NULL);
        !            19:        return(start);
        !            20: }
        !            21: #ifdef TEST
        !            22: #include <ctype.h>
        !            23: #include "misc.h"
        !            24: 
        !            25: /* eliminatye under ansi */
        !            26: digit(s)
        !            27: char s;
        !            28: {
        !            29:        return(isdigit(s));
        !            30: }
        !            31: 
        !            32: main()
        !            33: {
        !            34:        char s1[80], *fin;
        !            35: 
        !            36:        for(;;) {
        !            37:                ask(s1, "s1");
        !            38:                if(!strcmp(s1, "quit"))
        !            39:                        exit(0);
        !            40:                if(NULL == skip(s1, digit, &fin))
        !            41:                        printf("No non digits\n");
        !            42:                else {
        !            43:                        *fin = '\0';
        !            44:                        printf("%s\n", s1);
        !            45:                }
        !            46:        }
        !            47: }
        !            48: #endif

unix.superglobalmegacorp.com

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