简单的方法来区分C中的数字和字母

时间:2014-02-16 16:59:04

标签: c

我正在读取文件,并将该文件存储到cstring中。我正在使用strtok来解析我感兴趣的前几个字符串。之后,子字符串可以是数字(500,150,30)或字符组合(P(4),(K(5))。字符串库中有一个简单的方法来区分数字和字母?\

谢谢你的答案!

3 个答案:

答案 0 :(得分:1)

如果您确定没有其他符号(@#$%^%& * ^),您可以使用isalpha()功能。

用法:

   isalpha(p);// returns true if its alphabetic and false otherwise.

另请注意,您应该包含ctype.h

答案 1 :(得分:1)

好吧,如果您正在读取字节流并希望区分数字和字母,则可以执行以下操作:

// returns true if given char is a character, false otherwise
bool is_letter(char c) {
    return (c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z');
}

这很容易在需要的地方实现。如果你真的想要一个库函数,你仍然可以使用ctype.h中的isalpha()isdigit(),基本上应该做同样的事情。

N.B。:您可能希望在boolunsigned short之间进行选择。我不会进入debate

答案 2 :(得分:1)

您可能会查找isalphaisdigit库函数。