C 中的 char 数组并进行比较

标签 c arrays char

我在 C 语言中遇到了一些关于 char 数组的问题。

我有两个数组:

char history[10][80];
char *args[80];

而且我还有一个 char inputBuffer[80](它包含一个字符串)。 我想做的是找出 *args 中的值是否存在于 history 中。

我像这样填充history(histCount 在 0 到 10 之间)。

for(j=0; j<MAX_LINE; j++)
{
    history[histCount][j] = inputBuffer[j];
}

我想不通的是如何循环遍历 history 以查看它是否与 args[] 匹配。

  1. 示例 如果 args[0] == 'romeo'history[3][0] == 'r' 则匹配。
  2. 如果 args[0] == 'selfie'history[7][0] == 's' 则匹配。

我的第一个想法是做这样的事情,但似乎行不通

for(k=0; k<10; k++) {
    if(args[1] == history[k]) {
        printf("FOUND!!\n");
    }
}

如有任何帮助,我们将不胜感激。

最佳答案

for(k=0; k<10; k++)
{
    if(strcmp(args[1],history[k]) == 0)
    {
        printf("FOUND!!");
    }
}

关于C 中的 char 数组并进行比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21197131/

相关文章:

c++ - 获取笛卡尔积的算法

c - 数组输出错误

c++ - 是否可以在 char 中返回 "weird"个字符?

c - 使用 RSA 将用 C 编写的 Http 服务器转换为 HTTPS

c - 字体图形例程

c - 如何一次锁定两个资源?

c++ - 使用 Gmail 帐户通过 C++ 发送电子邮件

java - 从瓦片 map 加载子图像

arrays - 为查询返回的每一行调用 set-returning plpgsql 函数

c++ - 输入字母 f 或任何字母并计算字母表模式,如 abc abcd abcde abcdef 但它仅在我按 0 时有效