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


Groups > comp.lang.c > #143520

Re: Static Arrays Inside Functions

From James Kuyper <jameskuyper@alumni.caltech.edu>
Newsgroups comp.lang.c
Subject Re: Static Arrays Inside Functions
Date 2019-04-29 00:44 -0400
Organization A noiseless patient Spider
Message-ID <qa5vem$5mh$1@dont-email.me> (permalink)
References <qa24so02brf@news3.newsguy.com>

Show all headers | View raw


On 4/27/19 1:52 PM, F. Russell wrote:
> I need to include a lookup table, via an array, within a library function
> that will be linked to other C programs:
> 
> double some_function(...)
> {
> static double[100] = {55.55, 66.66, ...}
> ...
> }
> 
> I am not sure when this array will actually be initialized.
> 
> Will the array be initialized during compile time so that the
> function code contains the values?

An object is initialized when the memory that has been set aside to
store the object is given it's initial value. No such memory has been
set aside yet until the program starts to run; so initialization cannot
occur until run-time. A C interpreter might have compilation time
overlap run-time, but ordinarily they're easily distinguished.

> Or will the array be initialized during the first call to the function
> and thereafter remain static?

For an object with static storage duration, "Its lifetime is the entire
execution of the program and its stored value is initialized only once,
prior to program startup." (6.2.4p3).

Note, however, there is no way for the "observable behavior" (5.1.2.3p6)
of a strictly conforming program (4p5) to provide evidence
distinguishing between "initialized prior to program startup" and
"initialized during the first call to the function". This is because the
standard never imposes any requirements on how long any expression
should take to execute, so the fact that the first call to a function
would take longer than later calls does not qualify as such evidence.
Therefore, deferring initialization in that fashion would be permitted.

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


Thread

Static Arrays Inside Functions "F. Russell" <fr@random.info> - 2019-04-27 17:52 +0000
  Re: Static Arrays Inside Functions Bart <bc@freeuk.com> - 2019-04-27 19:03 +0100
    Re: Static Arrays Inside Functions Keith Thompson <kst-u@mib.org> - 2019-04-27 13:14 -0700
      Re: Static Arrays Inside Functions David Brown <david.brown@hesbynett.no> - 2019-04-28 00:10 +0200
  Re: Static Arrays Inside Functions Siri Cruise <chine.bleu@yahoo.com> - 2019-04-27 13:40 -0700
  Re: Static Arrays Inside Functions nobody@example.org (Scott) - 2019-04-28 17:26 +0000
    Re: Static Arrays Inside Functions Keith Thompson <kst-u@mib.org> - 2019-04-28 11:29 -0700
      Re: Static Arrays Inside Functions nobody@example.org (Scott) - 2019-04-29 01:17 +0000
        Re: Static Arrays Inside Functions Keith Thompson <kst-u@mib.org> - 2019-04-28 20:09 -0700
        Re: Static Arrays Inside Functions "F. Russell" <fr@random.info> - 2019-04-29 10:33 +0000
          Re: Static Arrays Inside Functions Bart <bc@freeuk.com> - 2019-04-29 11:49 +0100
          Re: Static Arrays Inside Functions Malcolm McLean <malcolm.arthur.mclean@gmail.com> - 2019-04-29 04:50 -0700
          Re: Static Arrays Inside Functions Ben Bacarisse <ben.usenet@bsb.me.uk> - 2019-04-29 17:36 +0100
          Re: Static Arrays Inside Functions Keith Thompson <kst-u@mib.org> - 2019-04-29 15:24 -0700
      Re: Static Arrays Inside Functions Ike Naar <ike@iceland.freeshell.org> - 2019-04-29 05:50 +0000
        Re: Static Arrays Inside Functions Ike Naar <ike@iceland.freeshell.org> - 2019-04-29 05:51 +0000
        Re: Static Arrays Inside Functions Keith Thompson <kst-u@mib.org> - 2019-04-29 00:04 -0700
          Re: Static Arrays Inside Functions Ike Naar <ike@iceland.freeshell.org> - 2019-04-29 15:06 +0000
    Re: Static Arrays Inside Functions Mateusz Viste <mateusz@wont.tell> - 2019-04-28 19:20 +0000
      Re: Static Arrays Inside Functions Keith Thompson <kst-u@mib.org> - 2019-04-28 13:50 -0700
  Re: Static Arrays Inside Functions James Kuyper <jameskuyper@alumni.caltech.edu> - 2019-04-29 00:44 -0400

csiph-web