unsigned char als Parameter an eine Funktion übergeben
-
krümelkacker schrieb:
Du meintest wohl eingabe[i] ist identisch mit *(eingabe+i), falls eingabe ein Zeiger ist.
nein, das ist schon so richtig wie es da steht. Wenn man mit &eingabe einen Zeiger auf das Array eingabe[n] übergibt so gilt: *&eingabe[n]==eingabe[n].
krümelkacker schrieb:
Nix. Aber ohne Code läuft man Gefahr, aneinander vorbei zu reden.
Ok, da hast du natürlich Recht.
-
AndyDD schrieb:
krümelkacker schrieb:
Du meintest wohl eingabe[i] ist identisch mit *(eingabe+i), falls eingabe ein Zeiger ist.
nein, das ist schon so richtig wie es da steht. Wenn man mit &eingabe einen Zeiger auf das Array eingabe[n] übergibt so gilt: *&eingabe[n]==eingabe[n].
Ich verstehe nicht, was das für eine Relevanz hat. Es ging doch darum, dass in einer Funktion, die einen Zeiger als Parameter bekommt, eine Dereferenzierung stattfinden muss, um auf das Array des Aufrufers zugreifen zu können:
void foo(char const* dings) { dings[2] = 'x'; // ist äquivalent zu *(dings+2) = 'x'; // Es gibt also eine Dereferenzierung } int main() { char eingabe[] = "hallo"; foo(eingabe); cout << eingabe; }