c - 如何检查字符串是否在 C 中的字符串数组中?

标签 c arrays

如何用C写下面的代码?另外:是否有用于检查数组长度的内置函数?

Python 代码

x = ['ab', 'bc' , 'cd']
s = 'ab'

if s in x:
  //Code

最佳答案

C 中没有检查数组长度的函数。但是,如果数组声明在与要检查的位置相同的范围内,则可以执行以下操作

int len = sizeof(x)/sizeof(x[0]);

您必须遍历 x 并对数组 x 的每个元素执行 strcmp,以检查 s 是否与 x 的元素之一相同。

char * x [] = { "ab", "bc", "cd" };
char * s = "ab";
int len = sizeof(x)/sizeof(x[0]);
int i;

for(i = 0; i < len; ++i)
{
    if(!strcmp(x[i], s))
    {
        // Do your stuff
    }
}

关于c - 如何检查字符串是否在 C 中的字符串数组中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13677890/

相关文章:

javascript - 使用数组映射删除对象属性

arrays - 无法对数组进行切片

python - 如何从numpy数组中获取两个最小值

c - 为什么我们不能访问我们在结构中填充的位?

c - 使用 AVX vector 内在函数手动矢量化的运行速度与 Ryzen 上添加的 4 个标量 FP 的速度大致相同?

c - 排序数组中元素出现的次数

php - 脏话过滤器不起作用 (php)

c - 如何将 `int` 数组转换为 C 中的 IP 地址字符串?

c - 简单的 fork 程序中不可预测的输出

具有未定义行为的 C++ 代码,编译器生成 std​​::exception