Aperçu Bref des Pointeurs
Opérateur de déréférencement
Un pointeur est une variable qui contient l'adresse d'un autre objet.
L'opérateur de déréférencement "*" retourne la valeur stockée à l'adresse.
La déclaration et l'initialisation d'un pointeur s'effectuent ainsi :
int* pName = NULL;
main.c
12345678#include <stdio.h> int main() { int* pName = NULL; printf("%p\n", pName); // `%p` is a specifier for a pointer return 0; }
Opérateur de référencement &
L'opérateur & retourne l'adresse d'un objet :
main.c
12345678#include <stdio.h> int main() { int variable; printf("%p\n", &variable); return 0; }
Une variable de type pointeur sert à stocker l'adresse, laquelle est renvoyée par l'opérateur &.
int variable;
int* pVariable;
pVariable = &variable;
Pour accéder au contenu à l'adresse spécifiée, il est nécessaire d'utiliser l'opérateur * sur une variable de type pointeur.
main.c
12345678910#include <stdio.h> int main() { int variable = 1024; int* pVariable = &variable; printf("Address: %p\n", pVariable); // `%p` specifier for a pointer printf("Returned value by address: %d\n", *(pVariable)); // using `*` to pointer return 0; }
Swipe to start coding
Vous disposez d'un produit avec un prix spécifique, et vous devez augmenter sa valeur d'un certain pourcentage.
Votre tâche consiste à implémenter une fonction qui met à jour le prix du produit en utilisant un pointeur.
Dans la fonction updatePrice :
- Utilisez l'opérateur de déréférencement (
*) pour accéder à la valeur actuelle stockée en mémoire — par exemple,*pricefait référence à100.0. - Calculez le pourcentage du prix actuel —
*price * percentIncrease / 100.0, ce qui pour 10% de 100.0 donne10.0. - Ajoutez ce pourcentage à la valeur d'origine pour obtenir le prix mis à jour —
*price = *price + (percentage part). - La fonction ne retourne rien — elle modifie directement la valeur via le pointeur.
Example
| Initial Price | Increase (%) | Updated Price |
|---|---|---|
| 100.0 | 10.0 | 110.0 |
| 250.0 | 5.0 | 262.5 |
| 80.0 | 25.0 | 100.0 |
Solution
Merci pour vos commentaires !
single
Demandez à l'IA
Demandez à l'IA
Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion
Can you explain the difference between the * and & operators in more detail?
Can you give an example of how to use pointers in a function?
What are some common mistakes when working with pointers?
Génial!
Completion taux amélioré à 4.35
Aperçu Bref des Pointeurs
Glissez pour afficher le menu
Opérateur de déréférencement
Un pointeur est une variable qui contient l'adresse d'un autre objet.
L'opérateur de déréférencement "*" retourne la valeur stockée à l'adresse.
La déclaration et l'initialisation d'un pointeur s'effectuent ainsi :
int* pName = NULL;
main.c
12345678#include <stdio.h> int main() { int* pName = NULL; printf("%p\n", pName); // `%p` is a specifier for a pointer return 0; }
Opérateur de référencement &
L'opérateur & retourne l'adresse d'un objet :
main.c
12345678#include <stdio.h> int main() { int variable; printf("%p\n", &variable); return 0; }
Une variable de type pointeur sert à stocker l'adresse, laquelle est renvoyée par l'opérateur &.
int variable;
int* pVariable;
pVariable = &variable;
Pour accéder au contenu à l'adresse spécifiée, il est nécessaire d'utiliser l'opérateur * sur une variable de type pointeur.
main.c
12345678910#include <stdio.h> int main() { int variable = 1024; int* pVariable = &variable; printf("Address: %p\n", pVariable); // `%p` specifier for a pointer printf("Returned value by address: %d\n", *(pVariable)); // using `*` to pointer return 0; }
Swipe to start coding
Vous disposez d'un produit avec un prix spécifique, et vous devez augmenter sa valeur d'un certain pourcentage.
Votre tâche consiste à implémenter une fonction qui met à jour le prix du produit en utilisant un pointeur.
Dans la fonction updatePrice :
- Utilisez l'opérateur de déréférencement (
*) pour accéder à la valeur actuelle stockée en mémoire — par exemple,*pricefait référence à100.0. - Calculez le pourcentage du prix actuel —
*price * percentIncrease / 100.0, ce qui pour 10% de 100.0 donne10.0. - Ajoutez ce pourcentage à la valeur d'origine pour obtenir le prix mis à jour —
*price = *price + (percentage part). - La fonction ne retourne rien — elle modifie directement la valeur via le pointeur.
Example
| Initial Price | Increase (%) | Updated Price |
|---|---|---|
| 100.0 | 10.0 | 110.0 |
| 250.0 | 5.0 | 262.5 |
| 80.0 | 25.0 | 100.0 |
Solution
Merci pour vos commentaires !
single