如何比较“ if”语句中的字符串?

我想测试一下,看看“ char”类型的变量是否可以与诸如“ cheese”的常规字符串进行比较,例如:


#include <stdio.h>


int main()

{

    char favoriteDairyProduct[30];


    scanf("%s",favoriteDairyProduct);


    if(favoriteDairyProduct == "cheese")

    {

        printf("You like cheese too!");

    }

    else

    {

        printf("I like cheese more.");

    }


    return 0;

}

(我实际上想做的比这更长,但这是我坚持的主要部分。)那么如何比较C中的两个字符串呢?


繁星点点滴滴
浏览 924回答 3
3回答

LEATH

if(strcmp(aString, bString) == 0){&nbsp; &nbsp; //strings are the same}神速

哔哔one

您不能使用==运算符比较字符数组。您必须使用字符串比较功能。看一下Strings(c-faq)。标准库的strcmp功能比较两个字符串,如果它们相同,则返回0;如果第一个字符串按字母顺序“小于”第二个字符串,则返回负数;如果第一个字符串“大于”,则返回正数。
打开App,查看更多内容
随时随地看视频慕课网APP