In C, le funzioni sono progettate non solo per risolvere il problema matematico specifico. Ma anche il tipo di dati della variabile che utilizziamo per l'operazione. Ad esempio, la funzione mod () determina il resto dopo una divisione di doppio, mentre il fmod () La funzione determina il resto dopo una divisione di galleggianti.
In questo Suggerimento Linux Articolo, spiegheremo come utilizzare la funzione fmod () per trovare il resto dopo una divisione puntuale galleggiante.
Daremo una spiegazione teorica di questa funzione, dei suoi argomenti di input e output e dei tipi di dati che ciascuno di essi accetta. Quindi, lo useremo in esempi pratici che abbiamo preparato per te con frammenti di codice e immagini, spiegando passo dopo passo come usare il fmod () funzione correttamente nella lingua C.
Sintassi della funzione fmod () in lingua c
doppio sistema (doppio a, doppio b);Descrizione della funzione fmod () in lingua C
IL fmod () La funzione determina il resto o il modulo dopo una divisione dei doppi numeri di punta mobile e restituisce il risultato nello stesso formato.
Questa funzione è complementare alla funzione mod () e differisce solo per tipo di dati nei suoi argomenti di input e output. Mentre una funzione determina il modulo di una doppia divisione intera, l'altra lo fa con il doppio del punto galleggiante.
La funzione fmod () fa parte della biblioteca matematica C, quindi il suo uso deve essere definito in anticipo nel nostro ".Codice c "o altro, in".H ”” con la seguente dichiarazione.
#includereUna volta la "matematica.L'intestazione h "è inclusa nel nostro codice, ora possiamo usare il fmod () funzione e il complementare fornito dalla biblioteca matematica C.
Come ottenere il resto o il modulo dopo una divisione puntuale mobile con la funzione fmod () nella lingua C.
In questo esempio ti mostriamo come includere le librerie, definire le variabili e ottenere il modulo di punto galleggiante dopo una divisione con la funzione fmod ().
Il primo passo è includere le librerie che useremo. Questa funzione appartiene alla biblioteca matematica. Quindi, includeremo "matematica.H "e la libreria di input/output standard C.
#includereQuindi, definiamo i doppi "A" e "B" che saranno il divisore e il dividendo. Il doppio "R", che sarà l'argomento di output in cui memorizzeremo il risultato. Assegnare i valori della frazione alle variabili "A" e "B".
#includereNon appena le variabili sono definite con i loro valori corrispondenti, chiamiamo la funzione fmod () e passare come argomento input. Il dividendo "A" e il divisore "B" è separato dalle virgole.
L'argomento di output è la variabile "R". Quindi, visualizziamo il suo contenuto o il risultato dell'operazione nella console di comando utilizzando la funzione printf ().
#includereL'immagine seguente mostra il risultato di questo codice. Come puoi vedere, fmod () restituisce il modulo della divisione di A/B nel punto galleggiante.
AVVERTENZA ”Riferimento non definito a 'fmod'” nella compilazione del codice che utilizza la funzione fmod ().
Quando utilizziamo questa funzione, il compilatore può lanciare il seguente avvertimento:
"Riferimento indefinito a" FMOD ""
Questo perché nelle versioni dopo C99 la biblioteca matematica è stata disaccoppiata dalla biblioteca standard C.
La soluzione più pratica è chiamare la libreria corretta con "-lm" sulla riga di comando della stessa build, come mostrato di seguito:
~ $ GCC documenti/esempio.c -o esempio -lmLa seguente immagine mostra il modo corretto di chiamare la libreria matematica nella riga di comando build. Come possiamo vedere, l'output di build non dà l'avvertimento che abbiamo visto prima.
Conclusione
In questo Suggerimento Linux Articolo sulla lingua C, abbiamo spiegato passo dopo passo come utilizzare correttamente il fmod () funzione per ottenere il resto o il modulo dopo una divisione variabile frazionaria.
Abbiamo esaminato la sintassi, gli argomenti di input e output e i tipi di dati supportati per questa funzione.
Mostriamo anche, con un esempio pratico, l'implementazione di fMod () e la chiamata corretta alla libreria a cui la funzione appartiene al tempo di compilazione.