Question arithmétique pointeur
jeancrien1121
Messages postés
16
Date d'inscription
Statut
Membre
Dernière intervention
-
jeancrien1121 Messages postés 16 Date d'inscription Statut Membre Dernière intervention -
jeancrien1121 Messages postés 16 Date d'inscription Statut Membre Dernière intervention -
Bonjour a tous, j'ai un petit soucis lors de mes révisions ayant déjà posée une question hier j'ai été satisfait de vos réponse je recommence donc aujourd'hui :D
Si PI, qui est un pointeur d'entiers codés sur 2 octets, est stocké à l'adresse 4351 et contient l'adresse 2301, et que K est une variable de type entier qui a été initialisée à la valeur -2, quelle est l'adresse désignée par l'expression : PI-- - ++K * sizeof(*PI) ?
Si PR, un pointeur de réels codés sur 32 bits, est à l'adresse 1771 et pointe l'adresse 3177 également utilisée pour héberger la variable caractère A dont la valeur est 27, quelle est l'adresse désignée par l'expression suivante :
--PR- ++A + 3 * sizeof(float) ?
Quelqu'un pourrait m'expliquer comment venir a bout de ces problèmes svp ? merci :)
Si PI, qui est un pointeur d'entiers codés sur 2 octets, est stocké à l'adresse 4351 et contient l'adresse 2301, et que K est une variable de type entier qui a été initialisée à la valeur -2, quelle est l'adresse désignée par l'expression : PI-- - ++K * sizeof(*PI) ?
Si PR, un pointeur de réels codés sur 32 bits, est à l'adresse 1771 et pointe l'adresse 3177 également utilisée pour héberger la variable caractère A dont la valeur est 27, quelle est l'adresse désignée par l'expression suivante :
--PR- ++A + 3 * sizeof(float) ?
Quelqu'un pourrait m'expliquer comment venir a bout de ces problèmes svp ? merci :)
A voir également:
- Question arithmétique pointeur
- Pointeur souris - Guide
- Curseur Windows 10 : comment bien voir la souris à l'écran - Guide
- Moyenne arithmétique excel - Guide
- Le pointeur de mon pc portable ne marche plus - Guide
- Pointeur laser publicitaire ✓ - Forum Loisirs / Divertissements
2 réponses
Bonjour,
Si PI, qui est un pointeur d'entiers codés sur 2 octets, est stocké à l'adresse 4351 et contient l'adresse 2301,
Il faudrait surtout connaître la valeur stockée à l'adresse 2301. Sans ça, tu ne peux pas répondre à la question 1.
Pour la question 2 :
--PR- ++A + 3 * sizeof(float) ?
Il suffit de remplacer les expressions par leur valeur.
PR vaut 3177
A vaut 27
sizeof(float) vaut 4. D'ailleurs il serait plus juste de dire combien de bytes vaut le float et non pas combien de bits. Car un byte ne contient pas forcément 8 bits...
Ensuite, il suffit de connaître l'opérateur ++PR. Cela signifie, j'incrémente PR et que je renvoie la nouvelle valeur. Autrement dit, tu peux le remplacer par (PR+1) dans l'expression. De même pour A.
Voilà, tu as toutes les infos pour répondre aux questions.
Si PI, qui est un pointeur d'entiers codés sur 2 octets, est stocké à l'adresse 4351 et contient l'adresse 2301,
Il faudrait surtout connaître la valeur stockée à l'adresse 2301. Sans ça, tu ne peux pas répondre à la question 1.
Pour la question 2 :
--PR- ++A + 3 * sizeof(float) ?
Il suffit de remplacer les expressions par leur valeur.
PR vaut 3177
A vaut 27
sizeof(float) vaut 4. D'ailleurs il serait plus juste de dire combien de bytes vaut le float et non pas combien de bits. Car un byte ne contient pas forcément 8 bits...
Ensuite, il suffit de connaître l'opérateur ++PR. Cela signifie, j'incrémente PR et que je renvoie la nouvelle valeur. Autrement dit, tu peux le remplacer par (PR+1) dans l'expression. De même pour A.
Voilà, tu as toutes les infos pour répondre aux questions.
Bon alors pour le deuxième ça serait (3177-1) - (28) + 3x4 = 3160
mais le résultat que j'ai noter dans mon cours donne 3109 :( quelqu'un pourrait me donner la solution étape par étape s'il vous plait :)
mais le résultat que j'ai noter dans mon cours donne 3109 :( quelqu'un pourrait me donner la solution étape par étape s'il vous plait :)
erf :( suis perdu j'ai pris la feuille d'une copine qui est plus tôt douer et elle prend normalement bien notes : / pour la première elle a noter 4337 : / Tu pourrait me donne la réponse de
Si PR, un pointeur de réels codés sur 48 bits, est à l'adresse 1011 et pointe l'adresse 5101 également utilisée pour héberger la variable caractère C dont la valeur est 'B', quelle est l'adresse désignée par l'expression suivante : ++PR + C-- + 1 ?
voila ce que j'obtiens moi : pr+1=5102 + c-- (affiche c et décrément après donc : c contient 98 (b en ascii) 5102 + 98 + 1 = 5201
mais la réponse inscrite dans mon cours est 5509 est j'ai du mal a croire que ses réponses sont fausses : / aidez moi svp :D
Si PR, un pointeur de réels codés sur 48 bits, est à l'adresse 1011 et pointe l'adresse 5101 également utilisée pour héberger la variable caractère C dont la valeur est 'B', quelle est l'adresse désignée par l'expression suivante : ++PR + C-- + 1 ?
voila ce que j'obtiens moi : pr+1=5102 + c-- (affiche c et décrément après donc : c contient 98 (b en ascii) 5102 + 98 + 1 = 5201
mais la réponse inscrite dans mon cours est 5509 est j'ai du mal a croire que ses réponses sont fausses : / aidez moi svp :D
je te remercie :) et j'adore tomber sur des réponses différente de mon cours ... :p
mais je me demandais faire c-- ca n'équivaut pas a afficher c et puis décrémenter donc c vaudrait 66 et nan 66-1 ?
et suis désoler de te demander ça mais est-tu vraiment sur ? :D étant donné que c'est quand même pour mon examen de demain
mais je me demandais faire c-- ca n'équivaut pas a afficher c et puis décrémenter donc c vaudrait 66 et nan 66-1 ?
et suis désoler de te demander ça mais est-tu vraiment sur ? :D étant donné que c'est quand même pour mon examen de demain