在C中,我如何知道字符串字符是否有特定的值



例如,假设我已经创建了一个名为string[100]的字符串,并为其分配了一些值,我怎么能知道string[n]的值是否为"0";m";?

我考虑过创建另一个char变量;m〃;然后用strcmp将string[n]与char进行比较,但仅仅为此创建变量似乎有点浪费代码,因为在我试图编写的程序中,我必须将string[n]与很多东西进行比较。

提前谢谢你,很抱歉我对C的知识太差了,我今天开始学习了。

您才刚刚开始,C中的字符串并不像"用户友好的";就像在其他一些编程语言中一样,所以询问没有错。

在C中,字符串只是一个字符数组,后面有一个空字符(''(表示字符串的末尾。不过,正如评论中所提到的,该数组中的每个字符都只是一个字符,这是一个小整数,可以与==!=><等简单运算符进行比较。

例如,如果我们想知道字符串是否以'm'开头,我们可以编写一个简单的函数来检查数组的第一个元素。请注意,C数组的索引从0开始。

int starts_with(char ch, char *str) {
return s[0] == ch;
}

一旦您学会了如何在C中使用循环和其他控制流机制,您将能够对字符串执行更复杂的操作。例如,确定字符串中是否出现字符。

int contains_char(char ch, char *str) {
for (char *c = str; *c; c++) {
if (c == ch) {
return 1;
}
}
return 0;
}

相关内容

  • 没有找到相关文章

最新更新