Many characters in European languages can have accents or other variations. Thus function changes such characters to a normalized form, typically to the unaccented form. It can also optionally normalize the case of the character to lowercase as well.
The normalization can be useful since often many texts are not consistent in whether they apply accents. Thus when you search for say Goedel you would also want to find Gdel as well. By normalizing text both before indexing and before processing your query you can easily find all the typical representations. If you do use this technique in your indexing, you might also wish to normalize spellings, which this function does not do.
The character pointed to by UnicodeChar is modified. If you need to keep your original text make sure you pass a copy of it to ucNormalizeChar and not a pointer to the original text.