Bien, recien estoy empezando con archivos, y arranque por un programa facilito. Que me grabe frases en un txt mediante la variable texto, hasta que ingreso la palabra "fin", cuando se ingresa fin se cierra el archivo, sin grabar dicha palabra.
Resulta, que por mas que ingrese fin no me lo toma, les paso el fragmento del codigo.
char texto[10];
FILE* fichero;
fichero= fopen("registroDeUsuario.txt", "wt");
while(texto[10] != "fin"){
fflush(stdout);
gets(texto);
fputs(texto,fichero);
fputs("\n",fichero);
}
fclose(fichero);
intente tambien con comillas simples y nada.
Hola, no probé el código ni me detuve a mirar detenidamente. Pero posiblemente el error es que estas comparando un puntero (lease tamaño de vector) con una cadena de caracteres.
Para comparar strings tenes que usar la funcion STRCMP(cadena1, cadena2) arroja 0 si ambas funciones son iguales
Si quieres comparar cadenas usa la función strcmp de C
Enlace: http://www.cplusplus.com/reference/cstring/strcmp/
En tu programa lo que estas comparanado es el ultimo carácter del arreglo con la cadena, por obvias razones jamas dará true
Saludos.... :laugh:
Gracias gente, no me di cuenta que al poner [10] iba a comparar ese elemento jaja, voy a usar la funcion.