Go Down

Topic: [Info] Où trouver la librairie math.h ? Explication (Read 6547 times) previous topic - next topic

Scapa

Salut les gars,
Je viens de passer 3h à chercher cette foutue librairie math.h sur internet ...
En fait si j'ai bien compris mais dites moi si je me trompe, cette librairie se trouve dans une chaine de compilation qui se nomme AVR-GCC et qui est déjà compilée de base avec l'IE d'Arduino.
Il suffit alors de d'ajouter la ligne suivante : 
Code: [Select]
#include <math.h> Vous avez pu vous en apercevoir, "math" ne devient pas orange comme le font certaines librairies :
CE N'EST PAS GRAVE !
En faite lorsque vous compilez, l'IE d'Arduino connait cette librairie et donc ça marche !
C'est tout con, mais pour les nuls c'est pratique de le noter quelque part afin de ne pas y passer trois heures ... Et en français !
Sincèrement vôtre, un nul,
Scapa

EDIT 20:59 08/06/16 -> Merci @fdufnews , c'est modifié ;)

fdufnews

Cette librairie n'est pas une librairie arduino. Elle fait partie de la chaine de compilation AVR-GCC.

68tjs

J'ajoute que c'est totalement inutile d'inclure math.h car il est déjà inclu dans Arduino.h.
Code: [Select]
/*
  Arduino.h - Main include file for the Arduino SDK
  bla bla
*/

#ifndef Arduino_h
#define Arduino_h
//bla bla
#include <math.h>

Ceux qui savent qu'ils ne savent rien en connaisse autant que ceux qui croient tout savoir et qui n'en connaissent pas plus qu'eux.
Pierre DAC.

68tjs

Comme dit plus haut, math.h  n'est pas une bibliothèque (=library en anglais),
Entièrement d'accord .
Il faudrait que le milieu arduino cesse d'employer des mots à tord et à travers.
C'est vrai qu'on y trouve de nombreux "auto-proclamés" experts.
Une bibliothèque c'est au minimum un fichier de code c ou cpp.
Le fichier *.h est une grande simplification et des sources d'erreurs en moins, mais n'est pas strictement nécessaire,  même si c'est quelque peu masochiste de ne pas l'utiliser.

Dans un milieu fermé de spécialistes on peut utiliser n'importe quel mots les intervenants se comprennent.
Dans un milieu ouvert comme ici, employer des mots en dehors de leur signification ne peux qu'induire les débutants dans l'erreur.


En principe, un débutant n'a pas besoin d'aller lire les fichiers d'entête standards.
Je diverge.
Le débutant total peut-être, mais bien vite si la personne veut décomposer son projet en un fichier principal (ino) et des fichiers annexes (c ou cpp) il faudra bien qu'il apprenne qu'il faut tout annoncer au compilateur et donc inclure systématiquement les fichiers *.h nécessaires. Donc il faudra au minimum connaître leur existence.

et là on se rejoint :
"Pour les nuls", il serait préférable d'informer que l'apprentissage du langage C/C++ est un prérequis, et qu'il passe par la lecture de la documentation officielle. On trouve des manuels en français sur le net.
En programmation me classant comme "un presque nul" c'est par là que j'ai commencé.
Ceux qui savent qu'ils ne savent rien en connaisse autant que ceux qui croient tout savoir et qui n'en connaissent pas plus qu'eux.
Pierre DAC.

Go Up