C ++ STL中的iswpunct()函数

在本文中,我们将讨论iswpunct()C ++中的函数,其语法,工作原理和返回值。

iswpunct()函数是C ++中的内置函数,在<cwctype>头文件中定义。该功能检查传递的宽字符是否为标点字符。此功能是的宽字符等效项ispunct(),这意味着它的功能相同,ispunct()区别在于它支持宽字符。因此,该函数将检查传递的参数是否为标点符号,然后返回任何非零整数值(true),否则将返回零(false)

标点符号如下

! @ # $ % ^ & * ( ) “ ‘ , . / ; [ { } ] : ?

语法

int iswpunct(wint_t ch);

该功能仅接受一个参数,即要检查的宽字符。参数用wint_t或WEOF强制转换。

wint_t存储整数类型的数据。

返回值

该函数返回一个整数值,该值可以为0(如果为false)或任何非零值(如果为true)。

示例

#include <iostream>
#include <cwctype>
using namespace std;
int main() {
   wint_t a = '.';
   wint_t b = 'a';
   wint_t c = '1';
   iswpunct(a)?cout<<"\nIts Punctuation character":cout<<"\nNot Punctuation character";
   iswpunct(b)?cout<<"\nIts Punctuation character":cout<<"\nNot Punctuation character";
   iswpunct(c)?cout<<"\nIts Punctuation character":cout<<"\nNot Punctuation character";
}

输出结果

如果我们运行上面的代码,它将生成以下输出-

Its Punctuation character
Not Punctuation character
Not Punctuation character

示例

#include <iostream>
#include <cwctype>
using namespace std;
int main () {
   int i, count;
   wchar_t s[] = L"@tutorials, point!!";
   count = i = 0;
   while (s[i]) {
      if(iswpunct(s[i]))
      count++;
      i++;
   }
   cout<<"There are "<<count <<" punctuation characters.\n";
   return 0;
}

输出结果

如果我们运行上面的代码,它将生成以下输出-

There are 4 punctuation characters.