1

J'ai un truc hyper bizzare!
voila un exemple de prog :



unsigned short a=0;
int b=0;
float c;
long d=0;

// Main Function
void _main(void)
{
clrscr();
a=256;
b=320;
d=a-b; //donc d=-64
c=d*(0.568679); //-64*0.568679=-36,39
printf("%fn",c);
ngetchx();
}

donc en principe, c=-36,39
Mais le prog compilé fait 37232,55...
Quelqu'un sait pourquoi?
Je croyais qu'on pouvais mélanger les types dans les calculs, est-ce vrai?
ATARI ruuullllleeeezzzzz!!!!!!

2

Je dirais que c'est le signe de (a-b) qui n'est pas étendu lors du stockage dans d, sachant que a est déclaré comme non signé confus
avatar
Un site complet sur lequel vous trouverez des programmes et des jeux pour votre calculatrice TI 89 / Titanium / 92+ / Voyage 200 : www.ti-fr.com.
Quelques idées personnelles ici.

3

Ca ne change rien si tu fait un typecasting ?
(d=(long)(a-b))

4

Non, de cette façon ça ne devrait rien changer. Teste plutôt :
d= (short)a - b ou d= (long)a - b
avatar
Un site complet sur lequel vous trouverez des programmes et des jeux pour votre calculatrice TI 89 / Titanium / 92+ / Voyage 200 : www.ti-fr.com.
Quelques idées personnelles ici.

5

ah oui, g pas passé aux typecasting...
Par contre, en changeant le type de d et en le mettant en short , ca marche...
trop bizzare...
ATARI ruuullllleeeezzzzz!!!!!!

6

C'est le fait que a est un unsigned short qui fait que la soustraction est calculée en mode non signé. Remplace:
d=a-b;
par:
d=(short)a-b;
[edit]Edité par Kevin Kofler le 15-03-2002 à 19:13:10[/edit]
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

7

Cool, ca marche!smile
Merci les gars! Mais c chiant faut faire hyper gaffe!
ATARI ruuullllleeeezzzzz!!!!!!

8

Moi je trouve plutôt pratique les typecasting wink

9

Kevin : tu répètes les posts 2 et 4 du topic tongue
ZdRubAl : En français ça se dit "transtypage". Ca le fait plus, non ? smile
avatar
Un site complet sur lequel vous trouverez des programmes et des jeux pour votre calculatrice TI 89 / Titanium / 92+ / Voyage 200 : www.ti-fr.com.
Quelques idées personnelles ici.

10

je trouve que cast ou typecast le "fait plus" que transtypage...
avatar
Tutorial C (TI-89/92+/v200) - Articles Développement Web (PHP, Javascript, ...)
« What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? » - Larry Wall

11

ha roll
Les goûts ça se discute pas grin
avatar
Un site complet sur lequel vous trouverez des programmes et des jeux pour votre calculatrice TI 89 / Titanium / 92+ / Voyage 200 : www.ti-fr.com.
Quelques idées personnelles ici.

12

Il faut se replacer dans le contexte tongue