int8 data[130]; - ROM 2632
int8 data[150]; - ROM 2864 (добавил 20 элементов, а прошивка увеличилась на 232!)
int8 data[180]; - ROM 2752 (добавил еще 30 - прошивка уменьшилась!)
Почему простое объявление локального массива (в RAM), без инициализации, нереально увеличивает размер флеша (ROM) и самое главное - почему увеличиваемый размер непропорционален и непонятно как связан с размером объявляемого массива?Аlex писал(а):И ?
CCS PIC C Compoliler V5.025КомпилятоР?
Ну так и грызните доку компилятора... на предмет неинициализированных данных... ключи, галочки в настройках...ZoomerJuk писал(а):я не просил создавать проинициализированный блок данных, просто выделить под них память, может я не так объявляю или чего-то не знаю
Опять про стандарты... и ни о чём???ARV писал(а):глобальные массивы инициализируются по умолчанию. локальные - нет. объявляйте локально и радуйтесь (если стека хватит)
90% проблем из-за того, что кто-то не соблюдает стандарты. причем все равно кто: программист или компилятор - и то и другое плохо. остальные 10% проблем заключаются в том, что кто-то чего-то не понимает: то ли программист не понимает стандарт языка, то ли помощник не понимает вопроса, либо вопрошающий не понимает, как сформулировать проблему, что бы с ней помогли разобраться.HHIMERA писал(а):Опять про стандарты... и ни о чём???![]()
В младших ПИКах хардварный стек...