diff options
Diffstat (limited to 'src/str_diff.c')
-rw-r--r-- | src/str_diff.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/str_diff.c b/src/str_diff.c new file mode 100644 index 0000000..47dff22 --- /dev/null +++ b/src/str_diff.c @@ -0,0 +1,17 @@ +/* Public domain. */ + +#include "str.h" + +int str_diff(register const char *s,register const char *t) +{ + register char x; + + for (;;) { + x = *s; if (x != *t) break; if (!x) break; ++s; ++t; + x = *s; if (x != *t) break; if (!x) break; ++s; ++t; + x = *s; if (x != *t) break; if (!x) break; ++s; ++t; + x = *s; if (x != *t) break; if (!x) break; ++s; ++t; + } + return ((int)(unsigned int)(unsigned char) x) + - ((int)(unsigned int)(unsigned char) *t); +} |