I am inquiring about how to tell when one element in an array has finished and another is beginning in an endian architecture.
I have 2 arrays where the size of long is 8 and the size of char is 1
long x[2] = {0x012345,0xFEDC};
char c[12] = {'a','b','c','d','e','f','g','h','0','1','2','3'};
And I was wondering how these values would be stored in the different Endian architectures if we consider x starting at memory address 0x100
and c starting at memory address 0x200
.
I thought that the Big Endian address would be {01,23,45,FE,DC}
where the first element of the set is at memory address 0x100
, the next is 0x101
, third is 0x102
, and so on since it stores the values based on the MSB being first. However, I'm not sure if there is supposed to an indicator between values that represent an array in memory to show that it's a different element, like a null char. like {01, 23, 45,'\0', FE, DC}
Likewise for the Little Endian Architecture I believe it would store it as {45,23,01,DC,FE}
, but I am not sure whether there should be some indicator to highlight the different elements in the array