Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.c > #13844

Re: Memory footprint of a structure of structures

Date 2011-11-24 10:06 +0100
From Philipp Klaus Krause <pkk@spth.de>
Newsgroups comp.lang.c
Subject Re: Memory footprint of a structure of structures
References <0364ed85-8bd9-4b42-9c74-86c4dd34adec@c18g2000yqj.googlegroups.com> <jailn0$uef$1@dont-email.me> <4ecd426e$0$4149$6e1ede2f@read.cnntp.org> <4ECD5A78.3010008@verizon.net>
Message-ID <4ece08fa$0$4150$6e1ede2f@read.cnntp.org> (permalink)
Organization CNNTP

Show all headers | View raw


Am 23.11.2011 21:41, schrieb James Kuyper:
> On 11/23/2011 01:58 PM, Philipp Klaus Krause wrote:
>> Am 23.11.2011 12:33, schrieb James Kuyper:
>>> On 11/23/2011 06:00 AM, Jean-Michel Hautbois wrote:
> ...
>>>> In my use case, I have >100 structures of t_buffer_something and one
>>>> big structure of these structures.
>>>> I would like, at compile time ideally, or by a static analysis script,
>>>> to know the footprint in memory of the big structure (here,
>>>> t_buffer_s).
>>>
>>> Any capability to calculate such things at compile time would have to be
>>> a feature of the particular compiler you're using; the C standard
>>> mandates no such feature.
>>
>> How about sizeof?
> 
> The C standard does mandate the sizeof operator, and it can be used to
> create a program which, at run-time, will generate output like that
> which he's asking for; I said as much in a later part of my message
> which you snipped.
> 
> The C standard does not mandate the existence of any feature that would
> produce such output at compile time. The only output that normally
> appears at compile time and is mandated by the C standard is diagnostic
> messages, the text of which is not specified by the standard, nor under
> the control of the developer - with the exception of the #error
> directive. However, the #error directive is executed during phase 4;
> sizeof expressions cannot be evaluated until phase 7, so the value of
> such expressions cannot appear in #error output.

Well, sizeof, unless applied to a variable-length array, yields an
integer constant. Which AFAIK, can be used e.g. as array bound. That's
how I understood the OP's "would like, at compile time ideally, […], to
know the footprint in memory" requirement.

Philipp

If, on the other hand, the OP just wants to know personally about the
size of objects in memory (as opposed to using the result in the program
as above): Many linkers have a command-line option to give the desired
information.

Back to comp.lang.c | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

Memory footprint of a structure of structures Jean-Michel Hautbois <jhautbois@gmail.com> - 2011-11-23 03:00 -0800
  Re: Memory footprint of a structure of structures James Kuyper <jameskuyper@verizon.net> - 2011-11-23 06:33 -0500
    Re: Memory footprint of a structure of structures Philipp Klaus Krause <pkk@spth.de> - 2011-11-23 19:58 +0100
      Re: Memory footprint of a structure of structures James Kuyper <jameskuyper@verizon.net> - 2011-11-23 15:41 -0500
        Re: Memory footprint of a structure of structures Ark <akhasin@macroexpressions.com> - 2011-11-23 23:59 -0500
          Re: Memory footprint of a structure of structures "Philip Lantz" <prl@canterey.us> - 2011-11-23 22:01 -0800
          Re: Memory footprint of a structure of structures James Kuyper <jameskuyper@verizon.net> - 2011-11-24 11:56 -0500
        Re: Memory footprint of a structure of structures Philipp Klaus Krause <pkk@spth.de> - 2011-11-24 10:06 +0100
          Re: Memory footprint of a structure of structures James Kuyper <jameskuyper@verizon.net> - 2011-11-24 12:00 -0500
            Re: Memory footprint of a structure of structures Jean-Michel Hautbois <jhautbois@gmail.com> - 2011-11-25 03:01 -0800
              Re: Memory footprint of a structure of structures Ben Bacarisse <ben.usenet@bsb.me.uk> - 2011-11-25 12:52 +0000
                Re: Memory footprint of a structure of structures "BartC" <bc@freeuk.com> - 2011-11-25 13:29 +0000
              Re: Memory footprint of a structure of structures James Kuyper <jameskuyper@verizon.net> - 2011-11-25 15:06 -0500
                Re: Memory footprint of a structure of structures Ark <akhasin@macroexpressions.com> - 2011-11-27 00:41 -0500
  Re: Memory footprint of a structure of structures Jorgen Grahn <grahn+nntp@snipabacken.se> - 2011-11-23 17:37 +0000
  Re: Memory footprint of a structure of structures Vincenzo Mercuri <vincenzo.mercuri@yahoo.it> - 2011-11-23 22:46 +0100
    Re: Memory footprint of a structure of structures Vincenzo Mercuri <vincenzo.mercuri@yahoo.it> - 2011-11-23 22:55 +0100
      Re: Memory footprint of a structure of structures Ark <akhasin@macroexpressions.com> - 2011-11-24 00:04 -0500
    Re: Memory footprint of a structure of structures Jean-Michel Hautbois <jhautbois@gmail.com> - 2011-11-24 00:39 -0800
    Re: Memory footprint of a structure of structures Jorgen Grahn <grahn+nntp@snipabacken.se> - 2011-11-24 10:34 +0000
      Re: Memory footprint of a structure of structures "BartC" <bc@freeuk.com> - 2011-11-24 12:18 +0000
        Re: Memory footprint of a structure of structures Jean-Michel Hautbois <jhautbois@gmail.com> - 2011-11-24 07:11 -0800
          Re: Memory footprint of a structure of structures jgk@panix.com (Joe keane) - 2011-11-25 22:08 +0000
            Re: Memory footprint of a structure of structures Ian Collins <ian-news@hotmail.com> - 2011-11-26 11:37 +1300
              Re: Memory footprint of a structure of structures jgk@panix.com (Joe keane) - 2011-11-27 23:20 +0000
        Re: Memory footprint of a structure of structures Jorgen Grahn <grahn+nntp@snipabacken.se> - 2011-11-27 10:17 +0000

csiph-web