Autor Tema: Predicado en C/C++

0 Usuarios y 1 Visitante están viendo este tema.

25 Octubre, 2009, 04:29 am
Leído 1088 veces

cristianll

  • $$\Large \color{#5e8d56}\pi\,\pi\,\pi$$
  • Mensajes: 236
  • Karma: +0/-0
  • Sexo: Masculino
Hola a todos, tengo una consulta, viendo un ejercicio me ha aparecido un predicado que no había visto anteriormente y no encuentro que significa, a ver si alguno de ustedes lo conoce es el siguiente, scanf("%[^\n]") . Muchas gracias.

25 Octubre, 2009, 11:05 pm
Respuesta #1

topo23

  • $$\Large \color{#c88359}\pi\,\pi\,\pi\,\pi$$
  • Mensajes: 937
  • Karma: +0/-0
El modificador %[] le indica a scanf que solo puede aceptar los caracteres incluidos entre los corchetes.

sscanf("accabdaef", "%[abc]%s", p, q);
// salida
// p="accab" q="daef"
// p contiene los caracteres mientras sea a,b,c

El ^ sirva para tomar el complemento

sscanf("a44cc2bf", "%[^123]%s", p, q);
// p="a44cc" q="2bf"
// p contiene cualquier caracter excepto 1,2,3

Por ejemplo [a-zA-Z0-9] indica que solo acepte letras y numeros, [^0-9] dice que acepte cualquir caracter excepto numeros.
.