Zeiger (*) speichern Variablenadressen und werden verwendet, um auf Variablenwerte zuzugreifen und diese zu ändern. Der Adressoperator (&) ruft die Adresse einer Variablen ab, die einem Zeiger zugewiesen oder an eine Funktion übergeben werden kann. Der Unterschied besteht darin, dass Zeiger dereferenziert werden können, während Adressoperatoren selbst nicht auf Variablenwerte zugreifen können.
Anwendungsszenarien und Unterschiede zwischen Zeiger (*) und Adressoperator (&) in der C-Sprache
Zeiger (*)
*
, gefolgt vom Variablennamen *
符号,后面跟变量名用途:
地址运算符(&)
&
符号,前面是变量名用途:
区别
实战案例
以下代码示例演示了指针和地址运算符在 C 语言中的使用:
#include <stdio.h> int main() { int x = 10; // 获取 x 的地址并将其赋值给指针 p int *p = &x; // 使用解引用运算符 * 访问和修改 x 的值 *p += 5; // 打印修改后的 x 值 printf("x: %d\n", x); // 输出:15 // 传递 p 指针作为函数的参数 myFunction(p); return 0; } void myFunction(int *ptr) { // 修改指向值的变量 *ptr = 20; }
在这个示例中:
*p
解引用指针 p 并访问指向的变量 x。myFunction
接收指向 x 的指针 p
,并通过 *ptr
&
, dem der Variablenname vorangestellt ist🎜🎜 🎜Funktion: 🎜Adresse der Variablen abrufen 🎜🎜🎜🎜Zweck: 🎜🎜🎜🎜Weisen Sie die Adresse einer Variablen einem Zeiger zu 🎜🎜Übergeben Sie die Adresse einer Variablen (als Parameter einer Funktion) 🎜🎜🎜🎜🎜 🎜Differenz🎜🎜🎜🎜Der Zeiger zeigt auf die Adresse der Variablen, während der Adressoperator die Adresse der Variablen abruft. 🎜🎜Zeiger können dereferenziert werden, um auf den Wert einer Variablen zuzugreifen und ihn zu ändern, während der Adressoperator selbst nicht auf den Wert einer Variablen zugreifen kann. 🎜🎜🎜🎜Praktischer Fall🎜🎜🎜Das folgende Codebeispiel demonstriert die Verwendung von Zeiger- und Adressoperatoren in der C-Sprache: 🎜rrreee🎜In diesem Beispiel: 🎜🎜🎜*p
Dereferenzieren Sie den Zeiger p und greifen Sie auf den zu Variable x zeigte auf. 🎜🎜Die Funktion myFunction
empfängt den Zeiger p
, der auf x zeigt, und ändert den Wert von x durch *ptr
. 🎜🎜Das obige ist der detaillierte Inhalt vonBeherrschen Sie die Anwendungsszenarien und Unterschiede von * und & in der C-Sprache. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!