Auf Seite 106 von K & R C, in strcmp
Funktion, dauert es Zeiger *s
und *t
als Argumente, sondern in der for
Schleife gibt esIst * s äquivalent zu s [i]?
s[i]==t[i]
als Bedingung.
Ich will nur, um zu bestätigen, für Arrays, wie
*(s+i) and s[i]
synonym sind, können daher die Anweisung Funktion s[i]
statt *s
verwenden?
Ich denke, die Funktion sind falsch dar: Es braucht nicht " Zeiger '* s' und' * t' ", eher, es dauert Zeiger' s' und 't'. –
Eine einfache Suche nach dem '[]' Poerator hätte dies beantwortet. Bevor Sie eine Frage stellen, versuchen Sie, sich selbst zu lösen. Und wie sollte '* s' dasselbe wie' s [i] 'sein (außer' i' ist Null)? – Olaf
Ja, es stimmt, dass für jeden gültigen Zeiger * oder Array * 's' und Index' i' der Ausdruck '* (s + i)' gleich 's [i]' ist. Das bedeutet, dass '* s' gleich' s [i] '*** nur *** ist, wenn' i' gleich null ist ('* s' ist das gleiche wie' * (s + 0) ', was gleich ist als 's [0]'). –