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

C/C++のtowupper()関数とは?ワイド文字を大文字に変換する使い方を解説

C/C++のtowupper()関数は、ワイド文字(wide character)を大文字に変換するための組み込み関数です。C++では「cwctype」ヘッダーファイル、C言語では「wctype.h」ヘッダーファイルで宣言されています。

この関数は引数として1つのワイド文字を受け取ります。渡された文字が小文字であれば対応する大文字に変換して返し、すでに大文字である場合やアルファベット以外の文字の場合は、元の文字がそのまま返されます。

towupper()関数の構文

wint_t towupper( wint_t ch );

パラメータ:

  • ch:大文字に変換したいワイド文字

戻り値:

  • 変換可能な場合は大文字に変換された文字を返します
  • 変換できない場合は、引数として渡された文字をそのまま返します

towupper()関数の使用例

以下は、C++でtowupper()関数を使用して、ワイド文字列全体を大文字に変換するサンプルプログラムです。

#include <cwchar>
#include <cwctype>
#include <iostream>
using namespace std;

int main() {
    wchar_t s[] = L"hello world!";
    wcout << L"大文字に変換した文字列 : ";
    for (int i = 0; i < wcslen(s); i++)
        putwchar(towupper(s[i]));
    return 0;
}

実行結果

大文字に変換した文字列 : HELLO WORLD!

コードの解説

このプログラムでは、まずwchar_t型の配列にワイド文字列「hello world!」を格納しています。次にforループを使って文字列の各文字を順番に取り出し、towupper()関数で大文字に変換しながらputwchar()関数で標準出力へ表示しています。小文字の「hello world!」がすべて大文字の「HELLO WORLD!」に変換されて出力されることが確認できます。

なお、マルチバイト文字(通常のchar型)を大文字に変換したい場合は、同様の機能を持つtoupper()関数を使用します。ワイド文字を扱う場合には、このtowupper()関数を使う点が大きな違いです。

  1. C/C++のmbsrtowcs()関数とは?構文・パラメータ・戻り値と実例を解説

    本記事では、C++ STLに含まれるstd::mbsrtowcs()関数の仕組み、構文、および具体的な使用例について詳しく解説します。 std::mbsrtowcs()とは? std::mbsrtowcs()は、C++ STLに組み込まれている関数で、<cwchar>ヘッダーファイル内で定義されています。関数名のmbsrtowcs()は「multibyte string to wide character string(マルチバイト文字列からワイド文字列への変換)」を意味し、再開可能な変換状態を維持しながら、NULL終端されたマルチバイト文字列をワイド文字列表現へと変換します。この

  2. C/C++のsystem()関数とは?使い方と実行例を徹底解説

    この記事では、C/C++におけるsystem()関数の基本的な使い方と動作について、具体例を交えながら詳しく解説します。 system()関数は、C/C++標準ライブラリに含まれる関数の一つです。オペレーティングシステムのコマンドプロセッサ(コマンドプロンプト)やターミナルで実行可能なコマンドをプログラムから渡して実行でき、コマンドの処理が完了すると制御をプログラムに戻します。 この関数を使用するには、ヘッダーファイル<stdlib.h>(C++の場合は<cstdlib>)をインクルードする必要があります。 構文 system()関数の構文は以下の通りです。 int