The TextSupport.h is in the zip file - it's the header file for the TextSupport.cpp.
Quote: "Though there is no need for the const or static, but it doesnt hurt either"
Oh yes there is. Without the 'static' the storage space is lost when the function returns as it is stored on the stack.
The const has no meaning where it is, but the return value shoud be 'const char*'. Without this 'const' people would be able to change the contents, and possibly overwrite other variables (if static) or the stack (if not static) if they were not careful.
In addition, the storage space should be 2 characters larger, as an int can have up to 10 characters, plus a sign (if negative) and a terminating null.
The other problem with this method is that you cannot use it twice on the same line, and it can be the cause of subtle bugs (contrived example to explain my meaning):
char* Buffer = new char[1024];
sprintf(Buffer, "First: %s, Second: %s", StringVal(123), StringVal(456));
The result will be (depending on the compiler, or even options within the compiler)
First: 123, Second: 123
or
First: 456, Second: 456
You will almost definitely get even worse problems if you ever use the routine within two different threads.