11.C++程序中的常用函数

我们将程序中反复执行的代码封装到一个代码块中,这个代码块就被称为函数,它类似于数学中的函数,在C++程序中,有许多由编译器定义好的函数,供大家使用。下面就简单说一下,C++中常用的函数。

1.sizeof

sizeof函数用于获取数据的类型或者是变量占多少内存,

cpp 复制代码
#include <iostream>
using namespace std;
int main() {

	int num = 255;

	cout << "int:      " << sizeof(int) << endl;    //int:      4
	cout << "int:      " << sizeof(num) << endl;    //int:      4
	cout << "float:    " << sizeof(float) << endl;  //float:    4
	cout << "bool:     " << sizeof(bool) << endl;   //bool:     1
	cout << "char:     " << sizeof(char) << endl;   //char:     1
	cout << "short:    " << sizeof(short) << endl;  //short:    2

	cout << "long:     " << sizeof(long) << endl;     //long:     8
	cout << "long long:" << sizeof(long long) << endl; //long long:8
	cout << "double:   " << sizeof(double) << endl;   //double:   8

	cout << "string:   " << sizeof(string) << endl;   //string:   32



}

执行结果:

2.取最大值(max),最小值(min)函数

cpp 复制代码
#include <iostream>
using namespace std;
int main() {

	cout << max(100.1, 111.1);  //111.1
	cout << endl;
	cout << max(233, -9);    //233
	cout << endl;
	cout << min(2.9, 0.2); //0.2
	cout << endl;
	cout << min(-100.0, -0.2); //-100
}

从上面可以看出来,max函数,是取两个数中的大值,min是取两个数中的小值。

  1. 取整( 四舍五入取整round, 向上取整ceil, 向下取整floor,向0取整 trunc)
cpp 复制代码
#include <iostream>
#include <math.h> //需要包含头文件
using namespace std;

int main() {

	float num = 100.65;
	cout << "ceil== " << ceil(num) << endl; //向上取整		 
	cout << "floor== " << floor(num) << endl; //向下取整
	cout << "round== " << round(num) << endl; //四舍五入取整
	cout << "trunc== " << trunc(num) << endl; //向0方向取整


}

4.取绝对值(整数abs,小数fabs)

cpp 复制代码
#include <iostream>
#include <math.h> //需要包含头文件
using namespace std;

int main() {

	float num = -100.65;
	cout << "fabs== " << fabs(num) << endl; //小数取绝对值
	int i=-10;	 
	cout << "abs== " << abs(i) << endl; //整数取绝对值


}

以上这些是C++的标准函数,还有一些是其它库私有的,比如 最大公因数gcd,最小公倍数lcm等就不是C++的标准库函数,只能在一些特定的平台下使用。

相关推荐
桐盛科技6 分钟前
拒绝“漂绿”风险:基于边缘计算的碳排放数据清洗算法与实时校验逻辑
人工智能·算法·边缘计算
wuyk5557 分钟前
107.FreeRTOS 链表深度解析:从原理到面试满分答案
c语言·开发语言·数据结构·stm32·单片机·链表·面试
geovindu8 分钟前
CSharp: Wordcloud
开发语言·后端·c#·.net·.netcore·词云
Tongzhi202612 分钟前
通芝科技考勤软件三大发展趋势:AI大模型、无感识别与数据底座
大数据·科技·算法·爬山算法
Java小白笔记24 分钟前
Java 实现 ZIP 压缩包生成方案
java·开发语言·网络·7-zip
Persistent的粽子!25 分钟前
C++:类与对象(一)
开发语言·c++·经验分享·笔记
eBest数字化转型方案34 分钟前
Route Optimization for FMCG:多目标排线算法的工程实现
大数据·人工智能·算法
weixin_4407305043 分钟前
使用pytest中方法控制执行步骤(test_begin.py、test_end.py,@pytest.mark.run(order=1))
开发语言·python·pytest
库玛西1 小时前
深入浅出Linux select网络模型:从底层位图原理到C++面向对象高级封装
linux·服务器·网络·c++·ubuntu
2402_882893861 小时前
深入浅出 unordered_map 与 unordered_set——从使用到底层差异
c++·哈希·unordered_map·unordered_set