Décalage [Résolu]

Signaler
-
Messages postés
5446
Date d'inscription
mercredi 15 septembre 2004
Statut
Contributeur
Dernière intervention
27 novembre 2020
-
Bonjour, mon cours indique les opérateurs de décalage peuvent engendrer des modifications concernant la taille de la variable résultat. Je veux bien des exemples de ceci.
si je décale à gauche, les bits à un finiront par etre perdus/tronqués. Je ne vois pas de dépassement de capacité possible sur le type de la variable. Seulement un résultat faux ou indéfini possible. Si je décale à droite les valeurs stockées sont plus petites, mais bon le type de la variable ne change pas, c'est possible puisqu'on peut bien coder une valeur inférieure à 256 (pour du non signé par exemple) dans un entier long si on en a envie. Mais bon je pense que le terme "taille" de la variable de mon cours fait référence à celle du type de celle ci, fixe. Cette phrase est un non sens pour moi. Pouvez vous m'eclairer?

3 réponses

Messages postés
13343
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
28 novembre 2020
749
bonjour, il me semble que le type du résultat d'une operation est fixe, à fortiori si le résultat est enregistré dans une variable.
si tu nous donnes plus de contexte, nous y trouverons peut-être un sens.
Messages postés
5446
Date d'inscription
mercredi 15 septembre 2004
Statut
Contributeur
Dernière intervention
27 novembre 2020
914
Salut bonuxdu13,

Le terme "taille" fait référence à celle du type, oui, mais cela pourrait s'interpréter de la façon suivante :

En cas de décalage à gauche, pour éviter d'obtenir un résultat "faux" (non tronqué) de l'opération, il est nécessaire d'affecter préalablement le contenu d'une variable d'un certain type à un type semblable de plus grande taille.

Evidemment, cela ne se fait pas tout seul, c'est un point d'attention requis du programmeur.

Dal
Messages postés
13343
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
28 novembre 2020
749
bonjour Dal, je pense que tu as très bien interprété:
"en cas d'utilisation des opérateurs de décalage, il peut être utile d'utiliser un type de plus grande taille pour la variable résultat"
oui Dal je pense aussi que tu as compris le sens de cette phrase en effet. Je ne l'avais pas envisagé comme celà, tout simplement. Merci!
Messages postés
13343
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
28 novembre 2020
749
peux-tu alors marquer la discussion comme résolue?
Messages postés
5446
Date d'inscription
mercredi 15 septembre 2004
Statut
Contributeur
Dernière intervention
27 novembre 2020
914 >
Messages postés
13343
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
28 novembre 2020

Je pense qu'il ne peux pas le faire car bonuxdu13 n'a pas créé de compte sur CCM.

Je l'ai fait pour lui.