I don't see any issues with those identifiers. If other people are to use this function, they will have to learn the new format (ie different from printf's) anyway, so it doesn't really matter what you put. It would of course be best to keep all the printf ones the same, to make learning easier. But remember, there are at least 52 characters to choose from, so you have plenty of room to move.
If you implement a screen output function, I guess you'll be using a printf() style one ey. Personally, I prefer the ease of stream objects. Maybe you should implement the library as a class or set of classes, that way you could use both streams and old school functions. Eg:
Code:
class clsOut
{
public:
print(LPCTSTR,...); //or however the arg list is done, I forget now
clsOut operator << (char *);
clsOut operator << (int);
clsOut operator << (SYSTEMTIME);
};
Dunno, just a thought.