Let's start with the macro. As I noted, the convention is fully uppercase names, so this:
Code:
#define SIZE_OF_Document (100)
should be:
Code:
#define SIZE_OF_DOCUMENT 100
Next, you had the right syntax in your post #1, but now your use of the macro is wrong here:
Code:
memIdentifier mapArray[SIZE_OF_Document (100)];
It should have been:
Code:
memIdentifier mapArray[SIZE_OF_DOCUMENT];
This is wrong:
Code:
memIdentifier mapArray[0]={'bob','Pull',1,"clini"};
The problem is that you can initialise arrays, but you cannot assign to them. The above code looks like a mix of an attempt to redeclare mapArray and an attempt to assign to mapArray[0]. Rather, you should initialise mapArray. Furthermore, you should be using string literals, i.e., be careful of single quotes versus double quotes. So, you should have removed this line and written:
Code:
memIdentifier mapArray[SIZE_OF_DOCUMENT] = {{"bob", "Pull", 1, "clini"}};
Now, look at this line:
Code:
printf("%d",mapArray.[0]);
What are you trying to do in the above line? It looks like you want to print an int because of the %d, but mapArray.[0] is invalid syntax.
By the way, this is poor style:
You should write: