| |
| Posted by Jonathan M Davis in reply to Olivier Pisano | PermalinkReply |
|
Jonathan M Davis
Posted in reply to Olivier Pisano
| On Monday, September 4, 2023 2:34:08 PM MDT Olivier Pisano via Digitalmars-d- learn wrote:
> On Monday, 4 September 2023 at 09:41:54 UTC, BoQsc wrote:
> > I've seen everyone using **datatype**`.sizeof` property.
> >
> > https://dlang.org/spec/property.html#sizeof
> >
> > It's great, but I wonder if it differ in any way from the
> > standard C function `sizeof()`.
>
> Technically speaking, in C, sizeof is not a function, it is an operator. This is why it is not available in D (replaced by the .sizeof property).
>
> > https://www.geeksforgeeks.org/sizeof-operator-c/ https://en.cppreference.com/w/cpp/language/sizeof
> >
> > I'm seeking for some speed/performance, so that's why the
> > question.
> > Overall I'm alright with continuing using it.
>
> There is absolutely no difference in terms of runtime performance. In both cases, the compiler replaces it by the size of the type at compile-time.
Yeah. You can pretty much just think of C's sizeof and D's sizeof as being the same thing with different syntaxes. In both cases, it's a compile-time value that gives the size of a type in bytes. In neither case does how it is calculated have any impact on the performance of the program.
- Jonathan M Davis
|