#include <iostream>
#include <cctype>
#include <cstring>
void myToUpperCase(const char *source, char *dest)
{
while ((*dest++ = std::toupper(static_cast<unsigned char>(*source++))) != '\0');
}
int main()
{
char s2[20] = "#c++";
char s3[2] = "q";
char result[20];
myToUpperCase(s2, result);
std::cout << "- s2 (\"" << s2 << "\") myToUpper() -> " << result << " => " << ((std::strcmp(result, "#C++") == 0) ? "correct.\n" : "INCORRECT.\n");
myToUpperCase(s3, result);
std::cout << "- s3 (\"" << s3 << "\") myToUpper() -> " << result << " => " << ((std::strcmp(result, "Q") == 0) ? "correct.\n" : "INCORRECT.\n");
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Y2N0eXBlPgojaW5jbHVkZSA8Y3N0cmluZz4KCnZvaWQgbXlUb1VwcGVyQ2FzZShjb25zdCBjaGFyICpzb3VyY2UsIGNoYXIgKmRlc3QpCnsKCXdoaWxlICgoKmRlc3QrKyA9IHN0ZDo6dG91cHBlcihzdGF0aWNfY2FzdDx1bnNpZ25lZCBjaGFyPigqc291cmNlKyspKSkgIT0gJ1wwJyk7Cn0KCmludCBtYWluKCkKeyAKY2hhciBzMlsyMF0gPSAiI2MrKyI7CmNoYXIgczNbMl0gPSAicSI7CmNoYXIgcmVzdWx0WzIwXTsKCglteVRvVXBwZXJDYXNlKHMyLCByZXN1bHQpOwoJc3RkOjpjb3V0IDw8ICItIHMyIChcIiIgPDwgczIgPDwgIlwiKSBteVRvVXBwZXIoKSAtPiAiIDw8IHJlc3VsdCA8PCAiID0+ICIgPDwgKChzdGQ6OnN0cmNtcChyZXN1bHQsICIjQysrIikgPT0gMCkgPyAiY29ycmVjdC5cbiIgOiAiSU5DT1JSRUNULlxuIik7CgoJbXlUb1VwcGVyQ2FzZShzMywgcmVzdWx0KTsKCXN0ZDo6Y291dCA8PCAiLSBzMyAoXCIiIDw8IHMzIDw8ICJcIikgbXlUb1VwcGVyKCkgLT4gIiA8PCByZXN1bHQgPDwgIiA9PiAiIDw8ICgoc3RkOjpzdHJjbXAocmVzdWx0LCAiUSIpID09IDApID8gImNvcnJlY3QuXG4iIDogIklOQ09SUkVDVC5cbiIpOwp9