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