簡單介紹一下 std::max
與 std::min
的用法!
std::max
與 std::min
能得到最大最小值,型別除了數字的 short, int, long, float, double...,字元的 char 也是可以的 (比較其 ASCII code 大小)。
P.S. 函數被定義在 C++ header file <algorithm>,使用前記得先 include 喔!
兩個數值取最大 / 最小值
#include <iostream>
#include <algorithm>
// max
std::cout << std::max(1, 3) << std::endl; // 3
std::cout << std::max(2.4, 3.5) << std::endl; // 3.5
std::cout << std::max('a', 'b') << std::endl; // 'b'
std::cout << std::max('a', '+') << std::endl; // 'a' [ASCII code: 97(a), 43(+)]
// min
std::cout << std::min(1, 3) << std::endl; // 1
std::cout << std::min(2.4, 3.5) << std::endl; // 2.4
std::cout << std::min('a', 'b') << std::endl; // 'a'
std::cout << std::min('a', '+') << std::endl; // '+' [ASCII code: 97(a), 43(+)]
多個數值取最大 / 最小值
只需要透過 {}
把多個數值包起來就可以了~
#include <iostream>
#include <algorithm>
// max
std::cout << std::max({1, 3, 4, 2}) << std::endl; // 4
std::cout << std::max({1.6, 3.5, 2.4, 2.2}) << std::endl; // 3.5
std::cout << std::max({'a', 'b', 'f', 'x'}) << std::endl; // 'x'
// [ASCII code: 97(a), 43(+), 65(A), 48(0)]
std::cout << std::max({'a', '+', 'A', '0'}) << std::endl; // 'a'
// min
std::cout << std::min({1, 3, 4, 2}) << std::endl; // 1
std::cout << std::min({1.6, 3.5, 2.4, 2.2}) << std::endl; // 1.6
std::cout << std::min({'a', 'b', 'f', 'x'}) << std::endl; // 'a'
// [ASCII code: 97(a), 43(+), 65(A), 48(0)]
std::cout << std::min({'a', '+', 'A', '0'}) << std::endl; // '+'