比较C中两个设置位置(整数值)之间两个字符串的两个子字符串

时间:2018-11-08 14:58:36

标签: c string char substring connection-string

我有两个字符串,想在两个变量之间进行比较。示例:字符串a =“ stackoverflow”和字符串b =“ stacknotoverflow”。我想检查字符串a的第五个位置(int = 5直到int = 9)和字符串b的第八个位置(int = 8直到int = 12)之间的每个字符是否都相同。有人可以帮我解决这个简单的问题吗?

2 个答案:

答案 0 :(得分:2)

您可以使用strncmp函数比较两个字符串,最多不超过字符数。要在字符串中间开始比较,您需要传入数组元素的地址以开始比较。

例如:

if (strncmp(&string1[4], &string2[4], 4) == 0) {
    printf("characters 5 - 8 are the same\n");
} else {
    printf("characters 5 - 8 are not the same\n");
}

答案 1 :(得分:-1)

假设您在谈论C。

https://linux.die.net/man/3/strcmp

此函数用于比较C语言中的字符串。

int result = strcmp(str1, str2);
printf("Compare result: %d", result);