C言語のisupper()関数とは?使い方とサンプルコードを解説
C言語のisupper()関数は、指定された文字が大文字アルファベットかどうかを判定するための標準ライブラリ関数です。文字が大文字であれば0以外の値(真)を返し、大文字でなければ0(偽)を返します。この関数を使用するには、ヘッダーファイル「ctype.h」をインクルードする必要があります。
isupper()関数の構文
int isupper(int character);
引数
- character:大文字かどうかを判定したい文字を指定します。
戻り値
- 文字が大文字の場合:0以外の値(真)を返す
- 文字が大文字でない場合:0(偽)を返す
isupper()関数の使用例
以下は、C言語でisupper()関数を使用したサンプルプログラムです。
#include<stdio.h>
#include<ctype.h>
int main() {
char val1 = 's';
char val2 = 'S';
if(isupper(val1))
printf("The character is uppercase\n");
else
printf("The character is not uppercase\n");
if(isupper(val2))
printf("The character is uppercase\n");
else
printf("The character is not uppercase");
return 0;
}実行結果
The character is not uppercase The character is uppercase
プログラムの解説
上記のプログラムでは、2つの変数「val1」と「val2」にそれぞれ小文字の「s」と大文字の「S」を初期値として代入しています。その後、isupper()関数を使って各変数が大文字かどうかを判定し、結果に応じてメッセージを出力しています。
char val1 = 's';
char val2 = 'S';
if(isupper(val1))
printf("The character is uppercase\n");
else
printf("The character is not uppercase\n");val1には小文字「s」が格納されているため、isupper()は0を返し、「not uppercase(大文字ではない)」と表示されます。一方、val2には大文字「S」が格納されているため、isupper()は0以外の値を返し、「uppercase(大文字である)」と表示されます。
このようにisupper()関数は、ユーザー入力のバリデーションや文字列処理などにおいて、文字種別の判定が必要な場面で非常に便利な関数です。なお、類似の関数として小文字を判定する「islower()」も用意されており、これらを組み合わせることで柔軟な文字判定処理を実現できます。
-
C言語の文字操作を徹底解説!宣言方法と入出力関数の使い方
Cプログラミング言語において、文字(character)は英大文字(A〜Z)、英小文字(a〜z)、数字(0〜9)、空白(ホワイトスペース)、または特殊記号のいずれかとして扱われます。文字の宣言方法C言語で文字型変数を宣言する際は、char 型を使用します。文字定数はシングルクォーテーション( )で囲んで指定します。char a = A; /* 文字定数を使用した宣言 */このように宣言することで、変数 a に1文字分のデータを格納できます。文字入出力関数の種類C言語には、文字を入出力するための関数がいくつか用意されています。代表的なものは以下の3組です。scanf / printf: 書式指定
-
C言語のstrcmp()関数とは?文字列比較の基本と使い方を徹底解説
C言語の標準ライブラリ関数 int strcmp(const char *str1, const char *str2) は、ポインタ str1 が指し示す文字列と、str2 が指し示す文字列を比較するための関数です。C言語において、文字型の配列は「文字列」と呼ばれます。まずは文字列の基本的な扱い方から確認していきましょう。文字列の宣言文字列(文字配列)の宣言は以下のように行います。char stringname [size];例えば、char string[50]; と宣言すれば、最大50文字の長さを持つ文字列を格納できます。文字列の初期化文字列の初期化には、主に次の2つの方法があります。1