Título: No me funcionan correctamente las cadenas de formato Publicado por: lucaslopez0000 en 28 Mayo 2013, 22:52 pm Hola a todos , como me estaba quebrando la cabeza con este asunto , hice un programa de prueba. Se donde esta el fallo pero no como solucionarlo. La linea en cuestion es scanf("%s__%s" , &str1 , &str2); Se supone que si yo pongo qqq__zzz , deberia guardar qqq en str1 y zzz en str2. La cuestion es que me lo guarda todo en str1 y me deja vacio str2. Es decir , yo esperaba
str1 = qqq str2 = zzz pero el programa da str1 = "qqq__zzz" str2 = "" Me estoy quebrando la cabeza y no se como puedo solucionar esto , aunque se que el error esta en la cadena de formato. Muchas gracias por su ayuda :) Título: Re: No me funcionan correctamente las cadenas de formato Publicado por: BlackM4ster en 28 Mayo 2013, 23:22 pm Código Prueba así a ver... Título: Re: No me funcionan correctamente las cadenas de formato Publicado por: lucaslopez0000 en 28 Mayo 2013, 23:38 pm Código Prueba así a ver... Título: Re: No me funcionan correctamente las cadenas de formato Publicado por: amchacon en 28 Mayo 2013, 23:50 pm Cuanto ocupa la cadena? Debe tener al menos 4 espacios para guardar qqq (recuerda que es necesario un caracter nulo para indicar el final).
Título: Re: No me funcionan correctamente las cadenas de formato Publicado por: CCross en 29 Mayo 2013, 00:03 am De esta forma te deberia funciónar
Código
Saludos Título: Re: No me funcionan correctamente las cadenas de formato Publicado por: amchacon en 29 Mayo 2013, 00:27 am De esta forma te deberia funciónar Los & del scanf sobran. Y aun asi no te compilara porque has puesto dos comillas en un mismo argumento.Código
Saludos Título: Re: No me funcionan correctamente las cadenas de formato Publicado por: CCross en 29 Mayo 2013, 00:36 am Los & del scanf sobran. Y aun asi no te compilara porque has puesto dos comillas en un mismo argumento. Lo acabo de compilar y ejecutar funcióna a la perfección no entiendo por que lo dices :huh:Saludos Título: Re: No me funcionan correctamente las cadenas de formato Publicado por: rir3760 en 29 Mayo 2013, 01:39 am La linea en cuestion es scanf("%s__%s" , &str1 , &str2); Se supone que si yo pongo qqq__zzz , deberia guardar qqq en str1 y zzz en str2. La cuestion es que me lo guarda todo en str1 y me deja vacio str2. Ese es el comportamiento normal de scanf con el especificador de formato "%s": leer una palabra (secuencia de caracteres delimitada por espacio blanco).Para leer dos secuencias cuyo separador es "__" debes utilizar, por poner un ejemplo: Código
---- Código Prueba así a ver... ---- De esta forma te deberia funciónar Los & del scanf sobran. Y aun asi no te compilara porque has puesto dos comillas en un mismo argumento.Código
Código No es un error ya que se concatenan resultando en una sola. Esa llamada a funcion es equivalente a: Código Un saludo Título: Re: No me funcionan correctamente las cadenas de formato Publicado por: amchacon en 29 Mayo 2013, 01:42 am No es un error ya que se concatenan resultando en una sola. Esa llamada a funcion es equivalente a: Tomo nota, es una delicia aprender cosas nuevas :rolleyes:Código Lo acabo de compilar y ejecutar funcióna a la perfección no entiendo por que lo dices :huh: ¿Pero en los & tenía razón? :silbar:Título: Re: No me funcionan correctamente las cadenas de formato Publicado por: CCross en 29 Mayo 2013, 02:12 am ¿Pero en los & tenía razón? :silbar: Si los & son redundantes ya que el nombre del array es un puntero inicializado con la dirección del primer elemento del array de caracteres. Saludos amchacon ::) Título: Re: No me funcionan correctamente las cadenas de formato Publicado por: lucaslopez0000 en 29 Mayo 2013, 15:10 pm Muchisimas gracias por responder , la pega es que estoy desde el movil y veo el codigo cortado , luego vere esta pagina desde un PC
|