boolean compare(char one[], char two[]) {
There's a memcmp function built-in you know.
void cleartag(char one[]) {
for (int i = 0; i < strlen(one); i++) {
one[i] = 0;
}
}
This is pretty dodgy. The string is not null-terminated. Why not just work your way up to 13, since that's how long the strings are?
Anyway, this would be easier:
memset(tagString, 0, sizeof tagString);