Maison >développement back-end >C++ >Maîtriser les scénarios d'application et les différences de * et & en langage C
Les pointeurs (*) stockent les adresses des variables et sont utilisés pour accéder et modifier les valeurs des variables. L'opérateur d'adresse (&) obtient l'adresse d'une variable, qui peut être attribuée à un pointeur ou transmise à une fonction. La différence est la suivante : les pointeurs peuvent être déréférencés, tandis que les opérateurs d'adresse eux-mêmes ne peuvent pas accéder aux valeurs des variables.
Scénarios d'application et différences entre le pointeur (*) et l'opérateur d'adresse (&) en langage C
Pointeur (*)
*
, suivi du nom de la variable *
符号,后面跟变量名用途:
地址运算符(&)
&
符号,前面是变量名用途:
区别
实战案例
以下代码示例演示了指针和地址运算符在 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
&
, précédé du nom de la variable🎜🎜 🎜Fonction : 🎜Obtenir l'adresse de la variable 🎜🎜🎜🎜Utilisation : 🎜🎜🎜🎜Attribuer l'adresse d'une variable à un pointeur 🎜🎜Passer l'adresse d'une variable (en paramètre d'une fonction) 🎜🎜🎜🎜🎜 🎜Différence🎜🎜🎜🎜Le pointeur pointe vers l'adresse de la variable, tandis que l'opérateur d'adresse obtient l'adresse de la variable. 🎜🎜Les pointeurs peuvent être déréférencés pour accéder et modifier la valeur d'une variable, tandis que l'opérateur d'adresse lui-même ne peut pas accéder à la valeur d'une variable. 🎜🎜🎜🎜Cas pratique🎜🎜🎜L'exemple de code suivant démontre l'utilisation des opérateurs de pointeur et d'adresse en langage C : 🎜rrreee🎜Dans cet exemple : 🎜🎜🎜*p
Déréférencez le pointeur p et accédez au variable x pointée. 🎜🎜La fonction myFunction
reçoit le pointeur p
pointant sur x et modifie la valeur de x via *ptr
. 🎜🎜Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!