Foros del Web » Programación para mayores de 30 ;) » C/C++ »

strtok no separa bien las palabras

Estas en el tema de strtok no separa bien las palabras en el foro de C/C++ en Foros del Web. Hola trato de separar esta cadena con strtok pero me la epara mala alguien sabra por que? 2015(c)(DR Ana de la regada) http://Http://aragon.unam.mx (anita) (lava ...
  #1 (permalink)  
Antiguo 20/11/2016, 23:59
 
Fecha de Ingreso: mayo-2010
Mensajes: 185
Antigüedad: 6 años, 9 meses
Puntos: 2
strtok no separa bien las palabras

Hola trato de separar esta cadena con strtok pero me la epara mala alguien sabra por que?

2015(c)(DR Ana de la regada)
http://Http://aragon.unam.mx (anita) (lava la) tina. Esta, es una frase en la que Ana, palabra que por si misma constituye un palindromo (ana, leido al reves tambien dice ana), se transforma en un frase que es un palindromo. Anis no es palindromo.

De ese texto me quita la letra c y el dr, lo que me imprime es 2015 ana de la regada....

este es mi codigo

Código:
FILE *libro;
	fopen_s(&libro, "libro.txt", "r");
	char diccionario[TAMTOKEN][TAMPALABRA];
	char palabra[TAMPALABRA];
	char *palabra1;
	char palabra2[TAMPALABRA];
	char *next = NULL;
	int i, j, k, k1;
	int numpala;
	int mayor[TAMTOKEN];
	int esta[TAMTOKEN];
	int larg;
	char aux[100];
	if (libro == NULL)
	{
		printf("No se pudo abrir el archivo");
	}
	else
	{
		i = 0;
		while (!feof(libro))
		{
			fscanf_s(libro, "%s", palabra, 99);
			//fgets(palabra, 99, libro);
			palabra1 = strtok_s(palabra, " ;,.)(", &next);
		
			strcpy_s(diccionario[i], palabra1);
			_strlwr_s(diccionario[i]);
			printf("%s\n", diccionario[i]);
			i++;

		}
  #2 (permalink)  
Antiguo 21/11/2016, 02:30
 
Fecha de Ingreso: octubre-2014
Ubicación: Madrid
Mensajes: 1.212
Antigüedad: 2 años, 4 meses
Puntos: 204
Respuesta: strtok no separa bien las palabras

Prueba a leer tu pregunta con tranquilidad...

  • ¿Qué tiene que ver lo del palíndromo con el código que has puesto?
  • ¿Qué pinta el enlace a la web? Web que por cierto no entiendo.
  • El código que has puesto es imposible que te recupere la parte de "Ana de la regada" porque únicamente estás llamando a strtok una vez por línea... luego únicamente vas a poder recuperar el primer fragmento, que será "2015"
Deberías plantearte reescribir tu pregunta con tranquilidad para que sea legible.


Y en cuanto al código, intenta poner un código mínimo, a ser posible compilable y ejecutable, que pueda reproducir el problema que tienes.


Un saludo
__________________
La ayuda se paga con esfuerzo o con dinero. Si no estás dispuesto a esforzarte y quieres que te hagan los deberes pide presupuesto, al menos así ahorrarás tiempo.



La zona horaria es GMT -6. Ahora son las 04:01.