Re: sizeof struct no less than 1?

2014-03-21 Thread Mike

On Saturday, 22 March 2014 at 02:27:02 UTC, Mike wrote:

Hello,

Consider an 'empty' struct as follows:

struct Test {}

When printing it's size, it's always 1.
void main()
{
writeln(Test.sizeof);
}

Output:
1

Why is it not 0?  What about struct Test is consuming 1 byte of 
memory?


Thanks,
Mike


Looks like this answers my question:
http://forum.dlang.org/post/l03oqc$mpq$1...@digitalmars.com


sizeof struct no less than 1?

2014-03-21 Thread Mike

Hello,

Consider an 'empty' struct as follows:

struct Test {}

When printing it's size, it's always 1.
void main()
{
writeln(Test.sizeof);
}

Output:
1

Why is it not 0?  What about struct Test is consuming 1 byte of 
memory?


Thanks,
Mike


Re: sizeof struct no less than 1?

2014-03-21 Thread Philpax
C++ exhibits the same behaviour for what is most likely the same 
reason: so that empty structs can be allocated without two 
distinct objects having the same memory address ( 
http://stackoverflow.com/questions/2362097/why-is-the-size-of-an-empty-class-in-c-not-zero 
)