¿No debería funcionar?Cómo asignar un valor de cadena a una variable de cadena en C++
string s;
s = "some string";
¿No debería funcionar?Cómo asignar un valor de cadena a una variable de cadena en C++
string s;
s = "some string";
Sí!
Construye una cadena por defecto y luego la asigna desde un const char*
.
(¿Por qué publicar esta pregunta? ... qué al menos lo intenta?)
Estaba teniendo problemas para hacerlo con vectores. Esta respuesta me ayudó a encontrar el problema, que estaba en otra parte, y tenía que ver con cómo funcionan los vectores. – neuromancer
Ah, ya veo, me alegro de que haya ayudado. La próxima vez, puede publicar un poco más de detalles sobre su problema y probablemente disfrutemos ayudándole con eso también :) – Stephen
En caso de que no este trabajo?
string s; s = "some string";
Bueno, en realidad se escribe std::string
, pero si usted tiene un using namespace std;
(absolutely evil) o using std::string;
(un poco menos mal) antes de eso, se debe trabajar - siempre y cuando usted también tiene una #include <string>
en la parte superior de tu archivo.
Tenga en cuenta, sin embargo, que es un desperdicio inicializar primero s
como una cadena vacía, solo para reemplazar ese valor en la siguiente instrucción. (Y si la eficiencia no era su preocupación, ¿por qué se programa en C++?) Mejor sería para inicializar el valor s
a la derecha inmediatamente:
std::string s = "some string"
o
std::string s("some string");
@ David: Estoy de acuerdo en que la pregunta es algo escueta, pero, por lo que sabemos, Phenom podría haber intentado y obtener un mensaje de error: 'int main() {string s; s = "alguna cadena"; } 'dará mensajes de error que pueden parecer crípticos para un novato. – sbi