C语言isxdigit()函数:判断字符是否为十六进制数字字符

isxdigit()函数

头文件和函数原型

#include <ctype.h>
int isxdigit(int c);

描述

isxdigit()是C语言标准库中的一个函数,用于判断一个字符是否为十六进制数字字符;

十六进制数字包括0~9之间的数字,以及A~F之间的字母(不区分大小写);

返回值

如果传入的字符参数是一个十六进制数字字符,则返回一个非0值,否则返回0

示例代码

这个示例用来判断一个字符串是否为合法的MD5;

一个合法的MD5,字符串长度应为32,且所有字符都应是十六进制数字字符;

#include <stdio.h>
#include <ctype.h>
#include <string.h>
#include <stdbool.h>

bool is_md5(const char* str) {
	
	if (strlen(str) != 32) {
		return false;
	}

	for (int i = 0; i < 32; i++) {
		if (!isxdigit(*(str + i))) {
			return false;
		}
	}

	return true;

}

int main() {

	char md5[] = "e10adc3949ba59abbe56e057f20f883e";

	printf("%s %s a valid MD5 value.\n",
		md5,
		is_md5(md5) ? "is" : "is not");
	
}

程序运行结果

e10adc3949ba59abbe56e057f20f883e is a valid MD5 value.

原创内容,如需转载,请注明出处;

本文地址: https://www.perfcode.com/c-functions/isxdigit.html

分类: 计算机技术
推荐阅读:
Python tuple元组 tuple(元组)类似于列表,但元组当中的项不能被修改。
最新阿里云免费SSL证书申请教程 2021年最新申请阿里云免费SSL证书流程如下:
Python memoryview()函数 memoryview() 函数是一个内置函数,它返回一个memoryview对象,该对象可以用于在 Python 中访问二进制数据。
Linux定时执行命令 在Linux下,可以通过一条命令即可实现在指定时间运行某个命令:
C语言计算数组元素数量 使用sizeof()函数计算整个数组的内存占用大小,再计算单个元素的内存占用大小;以总内存占用大小除以单个元素的内存占用大小,得到的就是元素数量;
Python hasattr()函数 hasattr() 是 Python 内置函数之一,用于检查一个对象是否具有指定的属性或方法。