Heim > Backend-Entwicklung > C++ > Der Unterschied zwischen * und & in der C-Sprache

Der Unterschied zwischen * und & in der C-Sprache

下次还敢
Freigeben: 2024-04-28 09:42:39
Original
622 Leute haben es durchsucht

In der C-Sprache wird (Sternchen) für indirekte Adressierung und Wert verwendet, während & (Adresszeichen) für Adresse und Referenz verwendet wird. Rufen Sie den Wert ab, auf den die Variable oder der Zeiger zeigt, um den Wert zu ändern und die Zeigervariable zu deklarieren. & Rufen Sie die Variablenadresse ab, um die Adresse der Zeigervariablen zuzuweisen und die Adresse als Funktionsparameter zu übergeben.

Der Unterschied zwischen * und & in der C-Sprache

Der Unterschied zwischen * und & in der C-Sprache

Symbole * und & sind unterschiedliche Operatoren in der C-Sprache, die für unterschiedliche Zwecke verwendet werden:

Bedeutung:

  • Sternchen *: steht für indirekte Adressierung oder Zeigerwertoperator.
  • Adressoperator &: steht für den Adress- oder Referenzoperator.

Zweck:

Stern*:

  • Den Wert einer Variablen oder einer Variablen abrufen, auf die ein Zeiger zeigt.
  • Ändern Sie den Wert einer Variablen oder einer Variablen, auf die ein Zeiger zeigt.
  • Als Teil der Deklaration einer Zeigervariablen.

Adresszeichen &:

  • Rufen Sie die Adresse (Speicherort) der Variablen ab.
  • Weisen Sie der Zeigervariablen die Adresse der Variablen zu.
  • Übergeben Sie die Adresse der Variablen als Funktionsparameter.

Beispiel:

int main() {
    int x = 10;
    int *ptr = &x;  // ptr指向x的地址

    // 获取x的值
    printf("x = %d\n", x);

    // 使用指针获取x的值
    printf("*ptr = %d\n", *ptr);

    // 使用指针修改x的值
    *ptr = 20;
    printf("x = %d\n", x);  // x的值已经改变为20

    return 0;
}
Nach dem Login kopieren

Hinweis:

  • *ptr stellt den Wert der Variablen dar, auf die die Zeigervariable ptr zeigt, während &x die Adresse der Variablen x darstellt.
  • Normalerweise ist eine Zeigervariable eine Variable vom Typ „Variablentyp*“, die auf eine Variable eines bestimmten Typs zeigt.
  • Adressübernahme- und indirekte Adressierungsoperatoren können in Kombination verwendet werden, um Zeigerarithmetik und andere erweiterte Datenstrukturen zu implementieren.

Das obige ist der detaillierte Inhalt vonDer Unterschied zwischen * und & in der C-Sprache. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage