issue with creating a one dimensional array of structs in C <p>So the issue is for my project I have to pretty much create an inverse table page for my operating systems class. The TA wrote down some basic code to get started. To create the table, he said the table should be a struct that * includes metadata such as page size and the number of pages along the translation * table (that can be a 2-dimensional array, or a one-dimensional array of structs) so here is the code:</p> <pre><code>#include &lt;stdio.h&gt; #include &lt;stdlib.h&gt; #define N 500 struct invTablePage{ invTablePage page[N]; }; struct table { int numOfPages; int pageSize; int array[struct invTablePage]; }; void initInverted(struct invTablePage **invTable, int memSize, int frameSize); int translate(struct invTablePage *invTable, int pid, int page, int offset); void releaseInverted(struct invTablePage **invTable); </code></pre> <p>however when i compile the code it gives me this</p> <pre><code>error: expected expression before ‘struct’ error: array type has incomplete element type struct invTablePage page[N]; </code></pre> <p>I have tried using size of but that doesnt work. Apparently int array[struct invTablePage] can be done but i dont understand how that even is supposed to work if it makes more sense trying to get the size of the struct. As far as array type has incomplete element error, i am not sure about that one if i already declared my struct of type invTablePage so it should be working. Any help would be appreciated</p>