Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Aperçu Bref des Pointeurs | Travail avec les Pointeurs et les Structures
Practice
Projects
Quizzes & Challenges
Quizzes
Challenges
/
Maîtriser les Structs en C

bookAperç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

main.c

copy
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

main.c

copy
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

main.c

copy
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; }
Tâche

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 :

  1. Utilisez l'opérateur de déréférencement (*) pour accéder à la valeur actuelle stockée en mémoire — par exemple, *price fait référence à 100.0.
  2. Calculez le pourcentage du prix actuel*price * percentIncrease / 100.0, ce qui pour 10% de 100.0 donne 10.0.
  3. Ajoutez ce pourcentage à la valeur d'origine pour obtenir le prix mis à jour*price = *price + (percentage part).
  4. La fonction ne retourne rien — elle modifie directement la valeur via le pointeur.

Example

Initial PriceIncrease (%)Updated Price
100.010.0110.0
250.05.0262.5
80.025.0100.0

Solution

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 2. Chapitre 1
single

single

Demandez à l'IA

expand

Demandez à l'IA

ChatGPT

Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion

Suggested prompts:

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?

close

bookAperç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

main.c

copy
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

main.c

copy
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

main.c

copy
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; }
Tâche

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 :

  1. Utilisez l'opérateur de déréférencement (*) pour accéder à la valeur actuelle stockée en mémoire — par exemple, *price fait référence à 100.0.
  2. Calculez le pourcentage du prix actuel*price * percentIncrease / 100.0, ce qui pour 10% de 100.0 donne 10.0.
  3. Ajoutez ce pourcentage à la valeur d'origine pour obtenir le prix mis à jour*price = *price + (percentage part).
  4. La fonction ne retourne rien — elle modifie directement la valeur via le pointeur.

Example

Initial PriceIncrease (%)Updated Price
100.010.0110.0
250.05.0262.5
80.025.0100.0

Solution

Switch to desktopPassez à un bureau pour une pratique réelleContinuez d'où vous êtes en utilisant l'une des options ci-dessous
Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 2. Chapitre 1
single

single

some-alt