I believe const after a function is only valid for a member function of a class (or structure) in this case it means that the function does not alter any of the data members of the class (or stucture) with the exception of members declared as mutable.

The const keyword before any function is a modifer of it's return type, the example you give is poor because you can not modifiy the return value of a function that returns a basci type but if the function returned a pointer then declaring it const would mean that it return a pointer to data that was not modifiable.