title: Initialize array starting from specific address in memory - C programming
body: <p><strong>Do you have idea how to initialize array of structs starting from specific address in memory (not virtual, physical DDR memory).</strong> I am working on implementation of TxRx on SoC (ARM-FPGA). Basically ARM (PS) and FPGA (PL) communicate to each other by using shared RAM memory. Currently I am working on transmitter side, so I need to constantly load packets that I get from MAC layer to memory, then my Tx reads data and sends it in air. To achieve this I want to implement circular FIFO buffer on (ARM) side, in way that I can store up to 6 packets into buffer and send them one by one, in same time loading other packets on places of already sent packages. Because I need to use specific memory addresses I am interested is it possible to initialize array of structure that will be stored on specific addresses in memory. <strong>For example I want that my array starts at adress 0x400000 and ends at address 0x400000 + MaximumNumberOfPackets x SizeOfPackets</strong> I know how to do it for one instantiate of structure for example like this:
  buffer_t *tmp = (struct buffer_t *)234881024;</p>
  
  <p>But how to do it for array of structures?</p>