Ich bin verwirrt, warum ich diese Warnung bekomme:
Ich initiiere matchObsFlag mit:
%Vor%aber wenn ich diese Zeile führe:
%Vor%Ich bekomme diese Warnung. Irgendwelche Ideen?
Sie erhalten sicherlich eine Warnung, weil Sie nicht 1 als (int*) 1
deklariert haben, so dass Sie eine Gleichheit zwischen verschiedenen Dingen testen: einer Adresse und einem int.
Also ist es entweder if(matchObsFlag == (int*)1)
oder if(*matchObsFlag == 1)
, je nachdem was du machen willst.
Der Typ von matchObsFlag
ist int*
, während das konstante Literal vom Typ int
ist. Der Vergleich zwischen den nicht verwandten Typen verursacht die Warnung.
matchObsFlag
ist ein NULL-Zeiger. matchObsFlag
muss auf einen gültigen Speicherort zeigen, wenn Sie den Wert, auf den der Zeiger zeigt, vergleichen möchten.
Um den Wert zu vergleichen, müssen Sie den Zeiger jetzt dereferenzieren. Also versuche es -
%Vor%Tags und Links objective-c