我正在尝试创建一个简单的程序或函数来接受用户输入,这可能是一个有效的十六进制数。
我正在尝试找出一种方法来验证它是否为正确的十六进制值,如果为真则返回十六进制值,如果为假则返回错误消息。
我在想一个函数来检查每个字符以确保它是 0-9
或 A-F
但想不出如何实现它。
谢谢。
最佳答案
给定 const char *s
,如果您想确定 s
指向的字符串中的每个字符是否都是有效的十六进制数字,您可以使用:
if (s[strspn(s, "0123456789abcdefABCDEF")] == 0)
{
/* valid */
}
关于c - 正确输入和验证十六进制值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8393389/