modf, modff
Divide um valor de ponto flutuante para fracionária e partes de inteiro.
double modf(
double x,
double *intptr
);
float modf(
float x,
float *intptr
); // C++ only
long double modf(
long double x,
long double * intptr
); // C++ only
float modff(
float x,
float *intptr
);
Parâmetros
x
Valor de ponto flutuante.intptr
Ponteiro para armazenados Inteiro parte.
Valor de retorno
Esta função retorna a parte fracionária assinado de x.Não há Sem erros retornar.
Comentários
As quebras de função modf Para Baixo o valor de ponto flutuante x em fracionária e partes de número inteiro, cada um deles tem o mesmo sinal que x. A parte fracionária assinado de x é retornado.O Inteiro parte é armazenada como um valor de ponto flutuante no intptr.
modf tem uma implementação que usa o fluxo contínuo Extensões SIMD 2 (SSE2).Consulte _set_SSE2_enable para informações e as restrições no usando a implementação de SSE2.
C++ permite sobrecarga, portanto, você pode chamar sobrecargas de modf.Em um programa C, modf sempre leva dois valores duplas e retorna um valor de duplo.
Requisitos
Rotina |
Cabeçalho necessário |
---|---|
modf, modff |
< Matemática.h > |
Para informações de compatibilidade adicionais, consulte compatibilidade na introdução.
Bibliotecas
Tudo as versões do de bibliotecas de tempo de execução C.
Exemplo
// crt_modf.c
#include <math.h>
#include <stdio.h>
int main( void )
{
double x, y, n;
x = -14.87654321; /* Divide x into its fractional */
y = modf( x, &n ); /* and integer parts */
printf( "For %f, the fraction is %f and the integer is %.f\n",
x, y, n );
}
Saída
For -14.876543, the fraction is -0.876543 and the integer is -14