Bonjour,
Ici je trouve le code suivant :
int x, y, z; //three axis acceleration data
double roll = 0.00, pitch = 0.00; //Roll & Pitch are the angles which rotate by the axis X and y
void RP_calculate(){
double x_Buff = float(x);
double y_Buff = float(y);
double z_Buff = float(z);
roll = atan2(y_Buff , z_Buff) * 57.3;
pitch = atan2((- x_Buff) , sqrt(y_Buff * y_Buff + z_Buff * z_Buff)) * 57.3;
}
Je ne comprends pas bien les lignes :
double x_Buff = float(x);
Un poil brutal, je voudrais écrire :
double x_Buff = x;
Est ce correct ou est ce une mauvaise pratique?
Là les variables x, y et z sont des variables globales, je veux les passer en variables locales a la fonction. Je m’aperçois en testant que le code suivant compile et fonctionne (en c):
#include <stdio.h>
void fonction_branlante(double z)
{
printf("z = %f\n", z);
}
int main(void)
{
int x = 3;
printf("x = %d\n", x);
fonction_branlante(x);
}
J’envoie un int a une fonction qui attend un double. Le compilateur gère ça. Ca marche. Est ce correct ou est ce une mauvaise pratique?
Merci d’avance.
+0
-0