Цитата Сообщение от Евгений Кислов Посмотреть сообщение
SIZEOF(pt) в данном случае возвращает размер указателя. В реализации CODESYS - размер указателя всегда равен 32 бита (4 байта) на 32-битных рантаймах.
На 64-битных рантаймах он равен 64 бита, но во времена разработки OSCAT поддержки таких рантаймов еще не было.

В итоге: (40-4)/4 = 9
Спасибо. Я догадывался, о чем то подобном. Да, ведь через ADDR мы получаем только адрес начала массива безотносительно его размеров . Только непонятно, что задумал автор? Ведь в других системах sizeoff(адрес) будет зависеть от количества адресуемой памяти видимо. А размер real так и останется 4 байта. Или 8 байт байт и это универсальный код получается?