問題很簡單。我必須檢查一個字串是否是一個字串的子字串。
#include <stdio.h>
#include <string.h>
int main() {
char *a = "Aristotle was not a good a philosopher";
int i = 1;
if (strcmp(a, "good") < 0) {
return i;
}
return 0;
}
uj5u.com熱心網友回復:
使用該功能沒有多大意義strcmp。相反,您應該使用函式strstr。
return strstr( a, "good" ) != NULL;
或者
return strstr( a, "good" ) == NULL;
如果字串中存在字串“good”,則取決于您要回傳的內容a。
uj5u.com熱心網友回復:
來自莫斯科的弗拉德回答正確的方法是使用 strstr
如果您出于某種(未知)原因需要使用,strcmp那么您的代碼需要一個回圈(另請注意,strcmp如果字串相同,則回傳 0)
類似于下面的內容(請注意,下面沒有健全性檢查來檢查例如subset_string 是比原始流更短還是更長等等。)
int main() {
char *a = "Aristotle was not a good a philosopher";
char *word_to_find = "good";
for(int i=0;i< (strlen(a)-strlen(word_to_find));i )
{
if (strcmp((a i), b) == 0) {
return 0;
}
return 1;
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/379863.html
下一篇:C和SDL如何在螢屏上移動一個點
