C/C++のiswdigit()関数とは?ワイド文字が数字かどうかを判定する方法
iswdigit()関数は、C/C++に標準で組み込まれている関数の一つで、指定されたワイド文字(wide character)が10進数の数字であるかどうかを判定します。C++では「cwctype」ヘッダーファイル、C言語では「ctype.h」ヘッダーファイルで宣言されており、引数としてワイド文字を1つ受け取ります。
iswdigit()関数の動作
「0」から「9」までの文字は、10進数の数字として分類されます。判定の結果は以下のように戻り値で表されます。
- ワイド文字が数字の場合:ゼロ以外の値(真)を返す
- ワイド文字が数字以外の場合:ゼロ(0)を返す
構文
C++におけるiswdigit()関数の構文は以下の通りです。
int iswdigit(ch)
サンプルコード
ここで、C++におけるiswdigit()関数の具体的な使用例を見てみましょう。数字「8」と記号「!」の2つのワイド文字を判定するプログラムです。
#include <cwctype>
#include <iostream>
using namespace std;
int main() {
wchar_t c1 = '!';
wchar_t c2 = '8';
if (iswdigit(c1))
wcout << c1 << " , The character is a digit ";
else
wcout << c1 << " , The character is not a digit ";
wcout << endl;
if (iswdigit(c2))
wcout << c2 << ", The character is a digit ";
else
wcout << c2 << ", The character is not a digit ";
return 0;
}
実行結果
! , The character is not a digit 8 , The character is a digit
この実行結果から、記号「!」は数字ではないため0が返され、「8」は数字であるためゼロ以外の値が返されていることがわかります。このようにiswdigit()関数を使うことで、ワイド文字列の中から数字だけを簡単に判別することができます。
-
C/C++のmbsrtowcs()関数とは?構文・パラメータ・戻り値と実例を解説
本記事では、C++ STLに含まれるstd::mbsrtowcs()関数の仕組み、構文、および具体的な使用例について詳しく解説します。 std::mbsrtowcs()とは? std::mbsrtowcs()は、C++ STLに組み込まれている関数で、<cwchar>ヘッダーファイル内で定義されています。関数名のmbsrtowcs()は「multibyte string to wide character string(マルチバイト文字列からワイド文字列への変換)」を意味し、再開可能な変換状態を維持しながら、NULL終端されたマルチバイト文字列をワイド文字列表現へと変換します。この
-
C/C++のsystem()関数とは?使い方と実行例を徹底解説
この記事では、C/C++におけるsystem()関数の基本的な使い方と動作について、具体例を交えながら詳しく解説します。 system()関数は、C/C++標準ライブラリに含まれる関数の一つです。オペレーティングシステムのコマンドプロセッサ(コマンドプロンプト)やターミナルで実行可能なコマンドをプログラムから渡して実行でき、コマンドの処理が完了すると制御をプログラムに戻します。 この関数を使用するには、ヘッダーファイル<stdlib.h>(C++の場合は<cstdlib>)をインクルードする必要があります。 構文 system()関数の構文は以下の通りです。 int