Biblioteca de configuración regional de C ++ - scan_not

Descripción

Devuelve el primer carácter que no está en la categoría y devuelve el primer carácter del rango [bajo, alto) que no se clasifica en ninguna de las categorías especificadas en m. Si no se encuentra tal carácter en el rango, se devuelve alto.

Declaración

A continuación se muestra la declaración para std :: ctype :: scan_not.

C ++ 98

const char_type* scan_not (mask m, const char_type* low, const char_type* high) const;

C ++ 11

const char_type* scan_not (mask m, const char_type* low, const char_type* high) const;

Parámetros

  • m - Es una máscara de bits de tipo de miembro.

  • low,high - Es un puntero al principio y al final de la secuencia de caracteres.

Valor devuelto

Devuelve un puntero al primer elemento del rango que clasifica, o alto si no se encuentra ninguno.

Excepciones

Strong guarantee - si se lanza una excepción, no hay efectos.

Carreras de datos

Se accede al objeto y a los elementos del rango [bajo, alto).

Ejemplo

En el siguiente ejemplo se explica sobre std :: ctype :: scan_not.

#include <iostream>
#include <locale>

int main () {
   std::locale loc;

   const char period[] = "june2018";

   const char * p = std::use_facet< std::ctype<char> >(loc).scan_not 
      ( std::ctype<char>::alpha, period, period+12 );

   std::cout << "The first non-alphabetic character is: " << *p << '\n';

   return 0;
}

Compilemos y ejecutemos el programa anterior, esto producirá el siguiente resultado:

The first non-alphabetic character is: 2