Как во время компиляции узнать количество цифр в целой части числа?
constexpr int a = 5; // ответ 1
constexpr short b = 100; // ответ 3
constexpr double c = 10.5 // ответ 2
Тем же способом, что и обычно.
Домашнее задание: Придумать, что делать, если дробное число не влезаeт в long long
.
#include <iostream>
constexpr int count_digits(long long x)
{
int ret = 0;
do
ret++;
while (x /= 10);
return ret;
}
int main()
{
constexpr int a = 5;
constexpr short b = 100;
constexpr double c = 10.5;
constexpr int d = count_digits(a);
constexpr int e = count_digits(b);
constexpr int f = count_digits(c);
std::cout << d << '\n';
std::cout << e << '\n';
std::cout << f << '\n';
}
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Есть программа в которой определяется переменная типа stringПосле ее определения в hex editor'е присутствует эта строка
Я хочу открыть методу класса B полный доступ к приватным членам класса A, но получаю от компилятора непонятное сообщение об ошибке