Una pequeña pregunta C
for(char j; i != strings.size(); std::coutlt;lt;strings[j]lt;lt;","){
cadenas. push_back(j);
std::sort(strings.begin(), strings.end()
Hay muchos problemas con este bucle
En primer lugar, su variable local char j no se inicializa después de declararla, entonces su valor es aleatorio y llamarla directamente producirá consecuencias impredecibles.
En segundo lugar, su programa necesita leer cadenas i y luego generarlas, pero no hay instrucciones para leer cadenas en su programa y está intentando insertar un carácter en un tipo de cadena en el. vector
Finalmente, por motivos de estandarización, el final de su programa debería devolver 0
Además, el propósito de su programa parece ser ingresar i cadenas y luego generarlas en el orden del diccionario, pero su código siempre genera la última cadena en orden lexicográfico en el vector actual
Por ejemplo, si su entrada es
3
z
p>
a
aaa
Entonces su programa generará 3 z en lugar de aaa z
Pero estoy no estoy seguro del propósito específico de su programa, por lo que no se modificará
Modificar de la siguiente manera
#include lt; iostreamgt
#include vectorgt;
int main(){
std::coutlt;lt;"¿Cuántas palabras se ingresarán?\n"
int p>
std ::cingt;gt;i;
std::coutlt;lt;"Se ingresarán"lt;lt;i lt;lt;"palabras.\n" ;
std::vectorlt; std::stringgt;
std::coutlt;lt;"Escriba"lt;lt;i lt;lt;"palabras "lt;lt;' \n';
for(char j=0; i != strings.size(); std::coutlt;lt;strings[j]lt;lt;", "){
std::string str;
std::cingt;gt;str;
strings.push_back(str);
std:: sort(strings.begin(), strings.end());
}
devuelve 0
}