Подключаемые библиотеки
Добавлено: 01 мар 2024, 14:29
Библиотека ввода-вывода на экран
#include <iostream>
Вектор
#include <vector>
Сужение (конверсия) переменных с плавающей точкой
#include <iomanip>
Библиотеки форматирования текста
(Манипуляторы ввода/вывода)
#include <ios>
#include <iomanip>
https://ru.cppreference.com/w/cpp/io/manip
https://ru.cppreference.com/w/cpp/io/manip/setw
Для вывода таблиц:
std::cout << std::setw(int); // Ширина столбца
std::cout << std::right; // форматирование по правому краю
std::cout << std::left; // форматирование по левому краю
std::cout << std::setfill('-'); // символ заполнения между столбцами, в данном случае: тире
std::cout << std::showpos; // включение отображение знака плюс в положительных числах
std::cout << std::dec; // отображение целого числа в десятеричной системе исчисления
std::cout << std::showbase; // Покажет значение базы: 0x - для восьмеричных
std::cout << std::oct; // отображение целого числа в восьмеричной системе исчисления
std::cout << std::hex; // отображение целого числа в шестнадцатиричной системе исчисления
std::cout << std::uppercase; // вывод символов в верхнем регистре
std::cout << std::setprecision(int); // отображение точности вывода числа с плавающей запятой
std::cout << std::showpoint; // отображение принудительную точку для числа с плавающей запятой
std::cout << std::internal; // внутреннее выравнивание для чисел со знаком
Сброс всех настроек форматирование до значений по умолчанию:
Числовые ограничения
#include <limits>
https://ru.cppreference.com/w/cpp/types/numeric_limits
std::numeric_limits<T>::min() - минимальные функции
std::numeric_limits<T>::max() - максимальные функции
std::numeric_limits<T>::lowest() - низкие функции
T - заполнитель для типа минимальной/максимальной точки соответствия
Математические операции
#include <cmath>
https://en.cppreference.com/w/cpp/header/cmath
std::floor() округление в меньшую сторону
std::ceil() округление в большую сторону
std::abs() вычисление абсолютного числа
std::cos() вычисление косинуса
std::exp() вычисление экспоненциального числа
std::log(double) вычисление логарифма по основанию e (в какую степень нужно возвести)
std::log10(double) вычисление логарифма по основанию 10 (в какую степень нужно возвести)
std::pow(int,int) возведение числа в степень
std::sqrt(int) извлечение квадратного корня
#include <iostream>
Код: Выделить всё
std::cout << vec << std::endl;
#include <vector>
Код: Выделить всё
#include <iostream>
#include <string>
#include <vector>
template<typename T>
std::ostream& operator<<(std::ostream& os, const std::vector<T>& vec)
{
for (auto& el : vec)
{
os << el << ' ';
}
return os;
}
int main()
{
std::vector<std::string> vec = {
"Hello", "from", "GCC", __VERSION__, "!"
};
std::cout << vec << std::endl;
}
Сужение (конверсия) переменных с плавающей точкой
#include <iomanip>
Код: Выделить всё
#include <iomanip>
std::cout << std::setprecision(20);
Библиотеки форматирования текста
(Манипуляторы ввода/вывода)
#include <ios>
#include <iomanip>
https://ru.cppreference.com/w/cpp/io/manip
https://ru.cppreference.com/w/cpp/io/manip/setw
Для вывода таблиц:
Код: Выделить всё
// отформатирует вывод строк в столбцах по правому краю с отступом заполнения 10,10 и 5 процентов ширины экрана
int col_width {10};
std::cout << std::right; // форматирование по правому краю экрана
std::cout << std::setw(col_width) << "Lastname" << std:setw(col_width) << "Firstname" << std:setw(5) << "Age" << std::endl;
std::cout << std::right; // форматирование по правому краю
std::cout << std::left; // форматирование по левому краю
std::cout << std::setfill('-'); // символ заполнения между столбцами, в данном случае: тире
std::cout << std::showpos; // включение отображение знака плюс в положительных числах
std::cout << std::dec; // отображение целого числа в десятеричной системе исчисления
std::cout << std::showbase; // Покажет значение базы: 0x - для восьмеричных
std::cout << std::oct; // отображение целого числа в восьмеричной системе исчисления
std::cout << std::hex; // отображение целого числа в шестнадцатиричной системе исчисления
std::cout << std::uppercase; // вывод символов в верхнем регистре
std::cout << std::setprecision(int); // отображение точности вывода числа с плавающей запятой
std::cout << std::showpoint; // отображение принудительную точку для числа с плавающей запятой
std::cout << std::internal; // внутреннее выравнивание для чисел со знаком
Сброс всех настроек форматирование до значений по умолчанию:
Код: Выделить всё
std::cout.unsetf(std::ios::scientific | std::ios::fixed);
#include <limits>
https://ru.cppreference.com/w/cpp/types/numeric_limits
std::numeric_limits<T>::min() - минимальные функции
std::numeric_limits<T>::max() - максимальные функции
std::numeric_limits<T>::lowest() - низкие функции
T - заполнитель для типа минимальной/максимальной точки соответствия
Математические операции
#include <cmath>
https://en.cppreference.com/w/cpp/header/cmath
std::floor() округление в меньшую сторону
std::ceil() округление в большую сторону
std::abs() вычисление абсолютного числа
std::cos() вычисление косинуса
std::exp() вычисление экспоненциального числа
std::log(double) вычисление логарифма по основанию e (в какую степень нужно возвести)
std::log10(double) вычисление логарифма по основанию 10 (в какую степень нужно возвести)
std::pow(int,int) возведение числа в степень
std::sqrt(int) извлечение квадратного корня