Ansi C: String vergleichen

Gast #2822301
Lesenswert?

Hi,

ich habe folgendes Problem. Ich möchte einen String vergleichen. Hierfür 
gibt es einen Funktion mit dem namen strcmp. Allerdings funktioniert 
diese Funktion nicht so wie sie sollte
1
char* IpAddr
2

3
IpAddr = ""
4

5

6
if (strcmp(IpAddr,0) == 0)
7
{
8

9
}

Was mache ich da möglicherweise falsch ? Gibt es hierzu eine Alternative 
zu strcmp ?
#2822330
Lesenswert?

Was wäre, wenn du dem Konstruktor im Falle eines Servers einfach die 
"Adresse" "server" übergibst, und dann diese mit strcmp abfragst?

Und warum die Adresse überhaupt als String übergeben anstatt eines 
int/long etc?

Edit: Sorry, denkfehler, IpAddresse sind ja 4 Byte - aber warum nicht 4 
Byte oder ein Array mit 4 Byte übergeben - 4 übergebene 0er dürften dann 
nicht gültig sein.
#2823678
Lesenswert?

Peter II schrieb:
> Rolf Magnus schrieb:
>> Man muß den Code trotzdem ändern.
>
> aber nicht die "oberen" schichten. Diese sollte davon nichts merken.

Für die oberen Schicht gilt aber:
Entweder sie machen konkret was mit der IP, dann müssen sie auch wissen 
oder ob das IP4 oder IP6 ist.
Oder für sie ist das nur ein Durchreichposten. Dann steckt man die IP in 
eine struct und die geben die struct einfach als ganzes weiter ohne sich 
darum zu kümmern was drinnen ist.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren