iscntrl

 

Tests whether an element in a locale is a control character.

Syntax

   template<Class CharType>
bool iscntrl(
   CharType _Ch, 
   const locale& _Loc
)

Parameters

  • _Ch
    The element to be tested.

  • _Loc
    The locale containing the element to be tested.

Return Value

true if the element tested is a control character; false if it is not.

Remarks

The template function returns use_facet<ctype<CharType> >(_Loc).is(ctype<CharType>::cntrl, _Ch).

Example

// locale_iscntrl.cpp
// compile with: /EHsc
#include <locale>
#include <iostream>

using namespace std;

int main( )   
{
   locale loc ( "German_Germany" );
   bool result1 = iscntrl ( 'L', loc );
   bool result2 = iscntrl ( '\n', loc );
   bool result3 = iscntrl ( '\t', loc );

   if ( result1 )
      cout << "The character 'L' in the locale is "
           << "a control character." << endl;
   else
      cout << "The character 'L' in the locale is "
           << " not a control character." << endl;

   if ( result2 )
      cout << "The character-set 'backslash-n' in the locale\n is "
           << "a control character." << endl;
   else
      cout << "The character-set 'backslash-n' in the locale\n is "
           << " not a control character." << endl;

   if ( result3 )
      cout << "The character-set 'backslash-t' in the locale\n is "
           << "a control character." << endl;
   else
      cout << "The character-set 'backslash-n' in the locale \n is "
           << " not a control character." << endl;
}

Output

The character 'L' in the locale is  not a control character.
The character-set 'backslash-n' in the locale
 is a control character.
The character-set 'backslash-t' in the locale
 is a control character.

Requirements

Header: <locale>

Namespace: std