webForumDet fria alternativet

strcmp

2 svar · 299 visningar · startad av turbofreddan

turbofreddanMedlem sedan apr. 2003115 inlägg
#1

jag som är du kanske, men hur gör man

jag vill jämföra det min pekare pekar på som är av typen string med en annan string, hur skriver man?

alltså typ

if (data->text == text)
där text är av typen string

strcmp eller va är deT?

forumMedlem sedan apr. 2003100 inlägg
#2

Det är strcmp du ska använda:

prototyp: int strcmp(const char *s1, const char *s2);

returvärden: Mindre än s2 < 0
samma som s2 == 0
större än s2 > 0

ex:
if (strcmp(Data->String1, Data->String2) == 0) {
cout << "Lika!";
}

Kom ihåg att inkludera string.h

PeWMedlem sedan juni 200010 432 inlägg
#3

Om det är C blir string.h och strcmp ett vettigt alternativ. Är det C++ skulle jag föredra string (utan .h) och compare(string x)

#include <string>
...
...
...

string r;
string s = "Kalle";
cin >> r;
if(s.compare(r)==0) //är 0 om lika
    cout << " Ok!" << endl;

Iofs är == operatorn överlagrad i string så det torde fungera med endast "==" för att se om de är lika. Förutsatt att du inkluderat string utan .h, förstås ;)

124 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
121 ms — hämta tråd, inlägg och bilagor (db)