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()関数をループ処理と組み合わせることで、文字列の解析や単語数のカウントなど、さまざまな用途に活用できます。
-
C++ STLのcosh()関数とは?双曲線余弦の求め方をサンプルコード付きで解説
cosh()関数とは? C++のSTLに組み込まれているcosh()関数は、ラジアン単位で与えられた角度の双曲線余弦(ハイパボリック・コサイン)を計算して返す関数です。使用するには、<cmath>ヘッダーをインクルードする必要があります。 双曲線余弦は、数学的に次の式で定義されます。 cosh(x) = (e^x + e^(-x)) / 2 構文 cosh()関数の構文は以下の通りです。 cosh(var) 構文から分かるように、cosh()関数はfloat型、double型、long double型のいずれかの引数varを受け取ります。そして、その双曲線余弦を返します。なお、引
-
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