當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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()。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。