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++的标准库函数,只能在一些特定的平台下使用。

相关推荐
感哥3 小时前
C++ 面向对象
c++
CoovallyAIHub4 小时前
中科大DSAI Lab团队多篇论文入选ICCV 2025,推动三维视觉与泛化感知技术突破
深度学习·算法·计算机视觉
沐怡旸4 小时前
【底层机制】std::shared_ptr解决的痛点?是什么?如何实现?如何正确用?
c++·面试
NAGNIP5 小时前
Serverless 架构下的大模型框架落地实践
算法·架构
moonlifesudo5 小时前
半开区间和开区间的两个二分模版
算法
moonlifesudo5 小时前
300:最长递增子序列
算法
CoovallyAIHub10 小时前
港大&字节重磅发布DanceGRPO:突破视觉生成RLHF瓶颈,多项任务性能提升超180%!
深度学习·算法·计算机视觉
感哥10 小时前
C++ STL 常用算法
c++
CoovallyAIHub11 小时前
英伟达ViPE重磅发布!解决3D感知难题,SLAM+深度学习完美融合(附带数据集下载地址)
深度学习·算法·计算机视觉
saltymilk21 小时前
C++ 模板参数推导问题小记(模板类的模板构造函数)
c++·模板元编程