elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Instruccion sscanf [C]
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Instruccion sscanf [C]  (Leído 3,104 veces)
oblivionxor

Desconectado Desconectado

Mensajes: 19


No hay mayor fracaso que apresurar el exito


Ver Perfil
Instruccion sscanf [C]
« en: 26 Febrero 2013, 18:57 pm »

Que tal, tengo una duda, estaba viendo un programa y tiene una comparacion muy rara (bueno para mi que soy nuevo en esto) miren

Código
  1. if (sscanf(q,"R%dC%d", &r,&c)==2)
  2.  

por que compara la instruccion sscanf con un 2?

Y en esta otra:

Código
  1. scanf("%d\n", &n);
  2.  

Por que pone un salto de linea despues del especificador de conversion?


« Última modificación: 26 Febrero 2013, 19:04 pm por oblivionxor » En línea

naderST


Desconectado Desconectado

Mensajes: 625



Ver Perfil WWW
Re: Instruccion sscanf [C]
« Respuesta #1 en: 26 Febrero 2013, 19:12 pm »

Citar
On success, the function returns the number of items of the argument list successfully filled.

Compara con dos validando que ambos elementos se hayan leído correctamente.

El salto de línea lo utiliza para ignorar para descartar el {enter} que queda en el flujo de entrada al momento de introducir algún dato.


En línea

oblivionxor

Desconectado Desconectado

Mensajes: 19


No hay mayor fracaso que apresurar el exito


Ver Perfil
Re: Instruccion sscanf [C]
« Respuesta #2 en: 26 Febrero 2013, 19:14 pm »

Oh muchas gracias! Ahora lo entiendo, entonces si quiero hacer que se ignoren caracteres en una lectura, los pongo en el scanf y ya se ignoran?
En línea

naderST


Desconectado Desconectado

Mensajes: 625



Ver Perfil WWW
Re: Instruccion sscanf [C]
« Respuesta #3 en: 26 Febrero 2013, 19:19 pm »

Sí se ignoran, pero lo que leas debe cumplir con ese formato.
En línea

oblivionxor

Desconectado Desconectado

Mensajes: 19


No hay mayor fracaso que apresurar el exito


Ver Perfil
Re: Instruccion sscanf [C]
« Respuesta #4 en: 26 Febrero 2013, 19:26 pm »

Con cual formato? D: con el del especificador de conversion? o cual?
En línea

naderST


Desconectado Desconectado

Mensajes: 625



Ver Perfil WWW
Re: Instruccion sscanf [C]
« Respuesta #5 en: 26 Febrero 2013, 19:32 pm »

A ver me explico un poco mejor, vamos a tomar de ejemplo el formato que tienes en tu sscaf():

scanf("R%dC%d", &r, &c)

Ahí se ignora la R y la C extrayendo únicamente el valor número de cada una, es decir se espera una cadena como la siguiente: "R10C20" la cadena debe cumplir con el formato especificado en el primer argumento de scanf(). No es lo mismo que le pases: "C10R20" ya que no cumplirá con el formato y scanf te devolverá 0 ya que no leyó ningún elemento.

Lo que te quería decir es que solo ignora los caracteres que coloques si tu cadena cumple con el formato.
En línea

oblivionxor

Desconectado Desconectado

Mensajes: 19


No hay mayor fracaso que apresurar el exito


Ver Perfil
Re: Instruccion sscanf [C]
« Respuesta #6 en: 26 Febrero 2013, 20:36 pm »

Oh! entendido a la perfeccion naderST muchas gracias por tu ayuda!
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Pregunta sobre sscanf(); ??? (RESUELTO)
Programación C/C++
ralymontes 4 3,692 Último mensaje 13 Noviembre 2011, 18:42 pm
por ralymontes
Instrucción % en C++?
Programación General
.:UND3R:. 1 2,579 Último mensaje 17 Enero 2012, 16:49 pm
por pucheto
EOF y sscanf (SOLUCIONADO)
Programación C/C++
ricardo2013 0 1,393 Último mensaje 11 Octubre 2012, 11:00 am
por ricardo2013
While duplica printf(fgets)(sscanf)
Programación C/C++
DanielPy 2 1,878 Último mensaje 7 Noviembre 2013, 17:40 pm
por DanielPy
Duda sobre sscanf y strtok
Programación C/C++
antolinalvaro 1 1,502 Último mensaje 1 Agosto 2018, 15:11 pm
por MAFUS
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines