Undefined reference to 'sqrt'
wachbaik
Messages postés
55
Date d'inscription
Statut
Membre
Dernière intervention
-
phenix -
phenix -
bonsoir tous le monde
Voila j'essaye de ciompiler un petit programme en C et à chaque et j'ai un problème de compilation avec la fonction sqrt du genre : "undefined reference to sqrt"
malgré que j'ai mis le #include <math.h>
Merci pour votre aide
Voila j'essaye de ciompiler un petit programme en C et à chaque et j'ai un problème de compilation avec la fonction sqrt du genre : "undefined reference to sqrt"
malgré que j'ai mis le #include <math.h>
Merci pour votre aide
A voir également:
- Référence indéfinie vers « sqrt »
- Reference pto - Accueil - Box & Connexion Internet
- Windows 7 vers windows 10 - Accueil - Mise à jour
- Clavier qwerty vers azerty - Guide
- Vers quelle adresse web renvoie ce lien - Guide
- Envoyer vers - Guide
6 réponses
Sous Windoze, je ne sais pas... mais avec gcc et Linux, il ne suffit pas de mettre 'math.h' (ce qui résoud la compilation) il faut aussi préciser la bibliothèque mathématique ('- lm' pour résoudre le 'linkage'), ce qui est logique.
Bonne continuation.
Bonne continuation.
Étrange !
pourtant sqrt fait bien partie du modèle standard :)
pourrais-tu nou smontrer la ligne de code qui appelle sqrt ainsi que les définitions des variables.
Merci et bonne soirée en attendant
pourtant sqrt fait bien partie du modèle standard :)
pourrais-tu nou smontrer la ligne de code qui appelle sqrt ainsi que les définitions des variables.
Merci et bonne soirée en attendant
#include <stdio.h>
#include <math.h> <-----------------
#include <stdlib.h>
int main (){
int n = 10 , i , j ; <----- déclaration de variables
printf(" introduisez votre chiffre /n");
if (( n = getchar()) != EOF && n != '\n' && n > '0' && n <= '9') { /*
n = n - '0' ;
printf( "les nombres premiers inférieurs à %d", n ) ;
for(i = 2 ; i < sqrt(n) ; i++ ){ <----------------
if(table[i] != -1){
for(j = i+i ; j < n ; j+=i ){
table[j] = -1 ;
}
}
}
return 0 ;
}
#include <math.h> <-----------------
#include <stdlib.h>
int main (){
int n = 10 , i , j ; <----- déclaration de variables
printf(" introduisez votre chiffre /n");
if (( n = getchar()) != EOF && n != '\n' && n > '0' && n <= '9') { /*
n = n - '0' ;
printf( "les nombres premiers inférieurs à %d", n ) ;
for(i = 2 ; i < sqrt(n) ; i++ ){ <----------------
if(table[i] != -1){
for(j = i+i ; j < n ; j+=i ){
table[j] = -1 ;
}
}
}
return 0 ;
}
héhé !
relis donc math.h
tu y verras avec consternation que l'argument de sqrt est un flottant pas un entier :-(
relis donc math.h
tu y verras avec consternation que l'argument de sqrt est un flottant pas un entier :-(
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
je travaille sous linux
donc la commande est : gcc -o monProg.exe monProg.c
et le linkage je le fait comment de la bibliothèque math
??
donc la commande est : gcc -o monProg.exe monProg.c
et le linkage je le fait comment de la bibliothèque math
??