Nob*_*fer 2 record ada data-structures
我正在调试一些软件,这些软件分为两部分 - 一部分用C++编写,另一部分用于Ada,我以前从未使用过.
在阅读一些Ada代码并查找包含粒子数据的变量时,我发现这些变量record
在for
循环中使用,例如:
for myRecord use
record
eta at 8 range 0 .. 31;
ttg at 16 range 0 .. 63;
end record;
Run Code Online (Sandbox Code Playgroud)
该at
和range
是在IDE(GPS- GNAT编程工作室),我以为粗体意味着它们的关键字/在Ada的特定的含义......有人可以给我解释一下这个结构是什么/呢?这里的数字是否与分配给变量/内存位置的内存量有关?
eta
从记录开始的字节偏移8的第0位开始,并继续到第31位; 即它从字节8开始占用32位.
类似地,rng
从字节16位0开始占用64位.