C++
 Computer >> コンピューター >  >> プログラミング >> C++

C++ STLのiswspace()関数とは?構文・使い方・戻り値を解説

本記事では、C++のiswspace()関数について、その構文、動作の仕組み、戻り値を詳しく解説します。

iswspace()関数は、C++の組み込み関数の一つで、<cwctype>ヘッダーファイルで定義されています。この関数は、引数として渡されたワイド文字が空白文字かどうかを判定します。iswspace()はisspace()のワイド文字版に相当する関数であり、isspace()と同じ動作をしますが、ワイド文字をサポートしている点が異なります。引数が空白文字(' ')であれば0以外の整数値(真)を返し、そうでなければ0(偽)を返します。

構文

int iswspace(wint_t ch);

この関数が受け取るパラメータは1つだけです。判定対象となるワイド文字を渡します。引数はwint_t型またはWEOFにキャストされます。

wint_tは整数型のデータを格納するための型です。

戻り値

この関数は整数値を返します。戻り値は、偽の場合は0、真の場合は0以外の値のいずれかになります。

使用例

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

出力

上記のコードを実行すると、以下の出力が得られます。

Not white space character
Its white space character
Not white space character

この例では、ピリオド('.')、空白(' ')、数字('1')の3つの文字をiswspace()関数で判定しています。空白文字のみが真と判定され、それ以外の文字は偽と判定されます。

使用例:文字列中の空白文字をカウントする

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

出力

上記のコードを実行すると、以下の出力が得られます。

There are 4 white space characters.

この例では、ワイド文字列に含まれる空白文字の数をカウントしています。文字列"I am visiting tutorials point"には4つの空白文字が含まれているため、結果として「There are 4 white space characters.」と表示されます。このように、iswspace()関数をループ処理と組み合わせることで、文字列の解析や単語数のカウントなど、さまざまな用途に活用できます。

  1. C++ STLのcosh()関数とは?双曲線余弦の求め方をサンプルコード付きで解説

    cosh()関数とは? C++のSTLに組み込まれているcosh()関数は、ラジアン単位で与えられた角度の双曲線余弦(ハイパボリック・コサイン)を計算して返す関数です。使用するには、<cmath>ヘッダーをインクルードする必要があります。 双曲線余弦は、数学的に次の式で定義されます。 cosh(x) = (e^x + e^(-x)) / 2 構文 cosh()関数の構文は以下の通りです。 cosh(var) 構文から分かるように、cosh()関数はfloat型、double型、long double型のいずれかの引数varを受け取ります。そして、その双曲線余弦を返します。なお、引

  2. C++ STLのsinh()関数の使い方を徹底解説

    sinh()関数とはsinh()関数は、ラジアンで指定された値の双曲線正弦(ハイパボリックサイン)を返す関数です。C++のSTL(標準テンプレートライブラリ)に組み込まれており、<cmath>ヘッダをインクルードすることで利用できます。双曲線正弦は、以下の数式で定義されます。sinh(x) = (e^x − e^−x) / 2sinh()関数の構文sinh()関数の構文は以下のとおりです。sinh(var)構文からわかるように、sinh()関数はfloat型、double型、long double型のいずれかのパラメータvarを受け取ります。戻り値は、varの双曲線正弦です。sin