当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


C++ modf()用法及代码示例


C++ 中的modf() 函数将数字分为整数部分和小数部分。

如前所述,modf() 将数字分为整数部分和小数部分。小数部分由函数返回,整数部分存储在作为参数传递给modf() 的指针指向的地址中。

该函数在<cmath> 头文件中定义。

modf() 原型 [从 C++ 11 标准开始]

double modf (double x, double* intpart);
float modf (float x, float* intpart);
long double modf (long double x, long double* intpart);
double modf (T x, double* intpart);  // T is an integral type

参数:

modf() 有两个参数:

  • x- 价值分为两部分。
  • intpart- 指向对象的指针(与x) 其中整数部分以相同的符号存储x.

返回:

modf() 函数返回传递给它的参数的小数部分。

示例 1:modf() 如何工作?

#include <iostream>
#include <cmath>
using namespace std;

int main ()
{
	double x = 14.86, intPart, fractPart;
	
	fractPart = modf(x, &intPart);
	cout << x << " = " << intPart << " + " << fractPart << endl;
	
	x = -31.201;
	fractPart = modf(x, &intPart);
	cout << x << " = " << intPart << " + " << fractPart << endl;

	return 0;
}

运行程序时,输出将是:

14.86 = 14 + 0.86
-31.201 = -31 + -0.201

示例 2:modf() 以整数值作为第一个参数

#include <iostream>
#include <cmath>
using namespace std;

int main ()
{
	int x = 5;
	double intpart, fractpart;
	fractpart = modf(x, &intpart);
	cout << x << " = " << intpart << " + " << fractpart << endl;
	
	return 0;
}

运行程序时,输出将是:

5 = 5 + 0

相关用法


注:本文由纯净天空筛选整理自 C++ modf()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。