Погугли по нему. Насколько я понимаю с ним много сложностей - размер сборки подскакивает, видимо компилятор подключает дополнительную библиотеку для этого типа, Serial.print не работает, скорость вычислений падает, если это конечно важно.
Но из примера выше, вот такой код вполне компилируется.
uint64_t testLongNumber, a, b;
void setup()
{
testLongNumber=9876543210LL;
a = testLongNumber+testLongNumber;
b = testLongNumber*testLongNumber;
}
void loop()
{}
Если все данные хранить в элементарных единицах измерения, то ни какой памяти не хватит. К примеру, 1 234 567 вольт = 1,234 мегавольта. Младшие разряды, на практике, часто, большой роли не играют . Сомневаюсь, что в каком либо приложении необходима точность в 1/1000000000000 ...
Arduino поддреживает работу с 64битными целыми с помощью типа недокументированного uint64_t
Вот здесь есть немного о его использовании http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1248398261
Погугли по нему. Насколько я понимаю с ним много сложностей - размер сборки подскакивает, видимо компилятор подключает дополнительную библиотеку для этого типа, Serial.print не работает, скорость вычислений падает, если это конечно важно.
Но из примера выше, вот такой код вполне компилируется.
Мне кажется надо над задачей подумать. Действительно ли тебе нужно вот такое большое значение в переменной.
uint64_t - подойдет. Спасибо
Если не секрет, зачем такое число? Подсчет дождевых капель в реальном времени? Измерение плодовитости китайцев с расчетом популяции на 2100 год?
Для хранения амплитуды сигнала.
Если все данные хранить в элементарных единицах измерения, то ни какой памяти не хватит. К примеру, 1 234 567 вольт = 1,234 мегавольта. Младшие разряды, на практике, часто, большой роли не играют . Сомневаюсь, что в каком либо приложении необходима точность в 1/1000000000000 ...