Avatar ·

¿Cómo trabajar con strings en C++?

¡Hola a todos! Empecé a estudiar C++ y me encontré con un problema al trabajar con strings. Intento escribir un programa simple que lea el nombre del usuario y luego muestre un saludo con ese nombre convertido a mayúsculas. Pero el código no funciona como espero.

Esto es lo que probé:

#include <iostream>\n#include <string>\n#include <cctype>\n\nint main() {\n    std::string name;\n    std::cout << "Ingrese nombre: ";\n    std::cin >> name;\n    \n    for (char c : name) {\n        c = std::toupper(c);\n    }\n    \n    std::cout << "Hola, " << name << "!" << std::endl;\n    return 0;\n}

El problema es que el nombre se muestra en el caso original, aunque espero que esté en mayúsculas. Parece que el bucle for each no modifica el string original. También probé usar std::getline en lugar de std::cin >>, pero no ayudó.

Resultado esperado: si ingreso "j