|
|
1.1 root 1: #include <libc.h>
2: #include <string.h>
3: #include <fio.h>
4: #include "dbtypes.h"
5:
6: dom_distance(
7: char *point,
8: char *origin
9: ){
10: char *p;
11: char *o;
12: int difference;
13:
14: difference = 0;
15: p = point+strlen(point)-1;
16: o = origin+strlen(origin)-1;
17:
18: /*
19: * find first difference
20: */
21: for(; o>=origin && p>=point; o--, p--){
22: if(*o!=*p)
23: break;
24: }
25: if(o<origin){
26: return 0; /* the same */
27: }
28:
29: /*
30: * count different elements
31: */
32: for(; o>=origin; o--)
33: if(*o=='.')
34: difference++;
35: return difference+1;
36: }
37:
38: dk_distance(
39: char *point,
40: char *origin
41: ){
42: int difference;
43:
44: /*
45: * find first difference
46: */
47: for(difference = 0; *origin; origin++, point++){
48: if(*origin!=*point)
49: break;
50: }
51: if(*origin=='\0'){
52: return 0;
53: }
54:
55: /*
56: * count different elements
57: */
58: for(; *origin; origin++)
59: if(*origin=='/')
60: difference++;
61: return difference+1;
62: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.