string s(str); to_uppercase(s); return s;
for(string::iterator X = str.begin(); X != str.end(); ++X) { #if (defined(BEOS) || defined(OPENBSD) || defined(CYGWIN) || defined(__MORPHOS__)) if ((*X >= 'a') && (*X <= 'z')) *X -= 32; #else *X = std::toupper(*X); #endif }
string to_uppercase(const std::string &str){	string s(str);	to_uppercase(s);	return s;}