Linux/C检查char是否包含空格,换行符或制表符

1 c tabs newline spaces char

我有一个GtkEntry,用户必须输入IP号或主机名.按下按钮时,用户在条目中键入的内容将添加到char中.如何以编程方式检查此char是否包含空格,换行符或制表符?我不需要删除它们,只是为了知道它们是否存在.提前致谢!

Nik*_*sov 6

看看角色分类例程:man isspace.

  • @Levo,`char`是一个8位整数,通常持有单个字母的ASCII码.`char*`是*this*的*指针*,用作C中的"字符串".所提到的分类函数用于*个别*字符,而不是字符串. (4认同)

Ama*_*9MF 5

创建一个包含感兴趣字符的字符数组。然后使用 strchr() 搜索字符串中是否存在该字符。

char charSet[] = { ' ', '\n', '\t', 0 };
char c;

// code that puts a character in c

if (strchr(charSet, c) != NULL)
{
    // it is one of the set
}
Run Code Online (Sandbox Code Playgroud)