[C]radice quadrata
Qualcuno riesce a spiegarmi perchè il seguente sorgente non mi calcola la radice quadrata?
L'errore restituito dal terminale è:
/tmp/ccz1D6fm.o: In function `main':
es8.c:(.text+0x4c): undefined reference to `sqrt'
collect2: ld returned 1 exit status
come se non ci fosse la libreria math.h...
L'errore restituito dal terminale è:
/tmp/ccz1D6fm.o: In function `main':
es8.c:(.text+0x4c): undefined reference to `sqrt'
collect2: ld returned 1 exit status
come se non ci fosse la libreria math.h...




#include <stdio.h> #include <stdlib.h> #include <math.h> int main(void) { float N; int sum=0; float radice; do { printf("Inserire valore intero N:\n"); scanf("%f",&N); radice=sqrt(N); sum=radice+sum; } while(N>0); printf("La somma vale %d\n",sum); }
Risposte
Come hai compilato il codice?
cosi:
"gcc es9.c -o es9"
e poi lo "lancio" con: ./es9
"gcc es9.c -o es9"
e poi lo "lancio" con: ./es9
Aggiungi l'opzione "-lm" alla riga in cui compili il tuo codice. È necessaria quando si usa gcc per usare le librerie matematiche. In altri compilatore non è necessario.
dove la aggiungo?
cosi:
gcc es9.c -o es9 -lm
?
cosi:
gcc es9.c -o es9 -lm
?
Sì
risolto! grazie!