C言語,isdigit()関数で文字が数字かどうかを確認する

スポンサーリンク

鍛錬 733

C言語,isdigit()関数で文字が数字かどうかを確認する

指定した文字が「0 ~ 9」の数字かどうかを確認するには、isdigit()関数を使用します。
 
以下は、isdigit()関数についてです。

#include <ctype.h>

int isdigit(int c);
 

引数

以下は、上記の引数についてです。

引数 意味
int c 確認対象の文字

戻り値

以下は、戻り値についてです。

戻り値
int 数字(0 ~ 9)の場合 0 以外
int 数字(0 ~ 9)以外の場合 0
スポンサーリンク

プログラム

以下は、指定した文字が数字(0 ~ 9)かどうかを確認するプログラム、test_isdigit.c です。

今回は、文字「1」「改行コード(\n)」「A」について確認しています。

// include
#include <stdio.h>
#include <ctype.h>

// main
int main(void)
{
	int c;
	int ret;
	
	// 文字が数字かどうかを確認
	
	// --------------------------------------------------------------
	printf("1回目の確認:");
	c = '1';
	ret = isdigit(c);
	if (ret != 0) {
		printf("[1]は数字です\n");
	}
	else if (ret == 0) {
		printf("[1]は数字ではありません\n");
	}
	
	// --------------------------------------------------------------
	printf("2回目の確認:");
	c = '\n';
	ret = isdigit(c);
	if (ret != 0) {
		printf("[\\n]は数字です\n");
	}
	else if (ret == 0) {
		printf("[\\n]は数字ではありません\n");
	}
	
	// --------------------------------------------------------------
	printf("3回目の確認:");
	c = 'A';
	ret = isdigit(c);
	if (ret != 0) {
		printf("[A]は数字です\n");
	}
	else if (ret == 0) {
		printf("[A]は数字ではありません\n");
	}
	
	return 0;
}
スポンサーリンク

実行結果

以下は、プログラム test_isdigit.c を実行しています。

***@ubuntu:~/***/test/c$ 
***@ubuntu:~/***/test/c$ gcc -Wall -Wextra test_isdigit.c -o test_isdigit
***@ubuntu:~/***/test/c$ ./test_isdigit
1回目の確認:[1]は数字です
2回目の確認:[\n]は数字ではありません
3回目の確認:[A]は数字ではありません

 
上記に示した通り、指定した文字が数字(0 ~ 9)かどうかを確認することができました。

タイトルとURLをコピーしました