INT_MIN,max函数和accumulate函数

简介: INT_MIN,max函数和accumulate函数


  1. INT_MIN

INT_MIN是C/C++语言头文件limits.h中的一个符号常量

介绍int的范围及原因

int的数值用补码表示,正数是从0000000000~01111111111111111,即0~2147483647;负数是从1000000000~ 11111111111111111,即-2147483648~-1补码的第一位代表符号,0为正,1为负且为了使0的表示具有唯一性,就用0000000000代表0,即0=0+。这也就导致了负数的最大绝对值比正数的大1

INT_MIN在limits.h中的表示

在limits.h中,定义了常量INT_MAX 为2147483647,而在C/C++中,负数的创建是由正数取反得到的,因此不能定义INT_MIN为-2147483648,只能定义为表达式(-INT_MAX-1)

2.max函数

头文件

#include<algorithm>

功能

输入

int a=1,b=2;
int x=max(a,b);
cout<<x;

输出

2

max可以进行比较并返回最大值,但是!上机后发现,对于4个输入来说,如max(a,b,c,d),系统会报错。max函数只能比较2个数据的大小,min函数也是如此。cplusplus官网定义如下:

  1. accumulate函数
头文件

#include<numeric>

用法

accumulate是累积函数,在c++中有两个定义

总和 (1)    
template <class InputIterator, class T>
   T accumulate (InputIterator first, InputIterator last, T init);
自定义 (2)    
template <class InputIterator, class T, class BinaryOperation>
   T accumulate (InputIterator first, InputIterator last, T init,
                 BinaryOperation binary_op);

默认操作是将元素相加,但可以将其他操作指定为自定义操作

“加“操作

加操作是对于一组数据来说的,因此要有数据的起始和终止指针,另外,初始值一定要给出,没有默认初始值!

accumulate(vec.begin() , vec.end() , 初始值);

”自定义“操作

accumulate(vec.begin() , vec.end() , 初始值,manner);

这种情况下,默认的加法就会变成自定义的manner


相关文章
|
6月前
|
算法 Java C++
数据结构与算法面试题:实现一个函数 fill(int[] a, int n, int v),使其将大小为 n 的数组 a 填满为 v。
数据结构与算法面试题:实现一个函数 fill(int[] a, int n, int v),使其将大小为 n 的数组 a 填满为 v。
39 0
|
C语言
C语言: 定义一个函数int isprime(int n),用来判别一个正整数n是否为素数,若为素数函数返回值为1,否则为0。在主函数中输入一个整数x,调用函数isprime(x)来判断这个整数x是
C语言: 定义一个函数int isprime(int n),用来判别一个正整数n是否为素数,若为素数函数返回值为1,否则为0。在主函数中输入一个整数x,调用函数isprime(x)来判断这个整数x是
1043 0
C语言: 定义一个函数int isprime(int n),用来判别一个正整数n是否为素数,若为素数函数返回值为1,否则为0。在主函数中输入一个整数x,调用函数isprime(x)来判断这个整数x是
|
Python
int函数的骚操作,你学废了吗?
int函数的骚操作,你学废了吗?
144 0
MATLAB求积分函数int
MATLAB中利用int函数用于对符号表达式s求不定积分、定积分、积分限为无穷的广义积分和变限积分等。
597 0
MATLAB求积分函数int
PHP 中,使用 (int) 或者 intval() 函数可以将变量转换为整数类型,区别是什么?底层原理是什么?
PHP 中,使用 (int) 或者 intval() 函数可以将变量转换为整数类型,区别是什么?底层原理是什么?
481 0
有一个整数数组,长度为9,数组里的值是多少不清楚,但是知道数组中有8个值是相等,其中一个小于其他8个值,目前有一个标准函数,compare(int[] a, int[] b),返回0相等1大于
有一个整数数组,长度为9,数组里的值是多少不清楚,但是知道数组中有8个值是相等,其中一个小于其他8个值,目前有一个标准函数,compare(int[] a, int[] b),返回0相等1大于
114 5
用int main检验任意函数,如(func)函数
用int main检验任意函数,如(func)函数
99 0
用int main检验任意函数,如(func)函数
|
Python
Python类型转换的四个函数int()、float()、str()、bool()
Python类型转换的四个函数int()、float()、str()、bool()自制脑图 将一个类型的对象转换为其他对象类型转换不是改变对象本身的类型,而是根据当前对象的值创建一个新对象。
242 0
Python类型转换的四个函数int()、float()、str()、bool()
|
C++
自定义C++ void swap(int& ra, int * pb)函数
这是一个软考和c++考试的一个经典面试题,给出5空,然后了,检测swap函数怎么写,主要考察的就是对于指针与引用的理解,难点为,很多人都不知道第三空填啥,因为我们通常写的c++的swap函数没有这一行,下面给出我的答案。
114 0
|
Python
Python基础-字符串如何转换成数字,不使用int()函数的情况下
要学会做自己人生的太阳,无需借别人的光,也可以把自己的人生路照亮。

热门文章

最新文章