読者です 読者をやめる 読者になる 読者になる

C言語の文字列比較

C言語では「文字列」を扱う変数はない。

「文字」の集合として扱っているため、
文字列を比較する際はループで1文字ずつ比較しなくてはならない。

比較できない例

if (str == "hogehoge"){
    printf("合致!");
}else{
    printf("合致しない...");
}

比較できる例

int compare_string(char str1[255], char str2[255]){
    int i, len = strlen(str1);
    for(i=0;i<len;i++){
        if(str1[i]!=str2[i]) return 0;
    }
    return 1;
}

if (compare_string(str1, "hogehoge")){
    printf("合致!");
}else{
    printf("合致しない...");
}