l i n u x - u s e r s - g r o u p - o f - d a v i s
Next Meeting:
June 2: Social gathering
Next Installfest:
Latest News:
May. 19: LUGOD special elections
Page last updated:
2002 Jan 17 17:14

The following is an archive of a post made to our 'vox-tech mailing list' by one of its subscribers.

Report this post as spam:

(Enter your email address)
Re: [vox-tech] C question: global vs local const
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [vox-tech] C question: global vs local const

begin Ken Bloom <kabloom@ucdavis.edu> 
> > ---- ORIGINAL MESSAGE ----
> > Date: Thu, 17 Jan 2002 15:04:38 -0800
> > To: vox-tech@lists.lugod.org
> > From: Peter Jay Salzman <p@dirac.org>
> > Subject: [vox-tech] C question: global vs local const
> > Reply-To: vox-tech@lists.lugod.org
> > 
> > when ratio and K are defined externally, gcc complains about a
> > non-constant initializer:
> > 
> >    const double ratio = 2.0L;
> >    const double K = ratio;
> >    
> >    int main(void)
> >    {
> >       return 0;
> >    }
> > 
> > however, when defined as local variables, there's no problem.
> > 
> >    int main(void)
> >    {
> >       const double ratio = 2.0L;
> >       const double K = ratio;
> >    
> >       return 0;
> >    }
> > 
> > why isn't const being honored for the global variable version?
> do you have a more thorough piece of demonstration code for what
> you're trying to do. Both of these pieces of code, as written, should
> initialize K and ratio to the value of 2.0, and should both do so
> without compiler warnings or compiler errors.

i think mark resolved this.   :)

> (I may be wrong,
> assigning 2.0L to a double in any circumstance may cause warnings to
> be emitted. Try just assigning 2.0)

in my real code, it was a long double.  i forgot to delete the "L"'s.
good eye.    :)

it looks like you're using C++?   i'm not too hip onto that language,
but i've heard people say that the const qualifier works differently
between the two languages.

vox-tech mailing list

LUGOD Group on LinkedIn
Sign up for LUGOD event announcements
Your email address:
LUGOD Group on Facebook
'Like' LUGOD on Facebook:

Hosting provided by:
Sunset Systems
Sunset Systems offers preconfigured Linux systems, remote system administration and custom software development.

LUGOD: Linux Users' Group of Davis
PO Box 2082, Davis, CA 95617
Contact Us

LUGOD is a 501(c)7 non-profit organization
based in Davis, California
and serving the Sacramento area.
"Linux" is a trademark of Linus Torvalds.

Sponsored in part by:
Appahost Applications
For a significant contribution towards our projector, and a generous donation to allow us to continue meeting at the Davis Library.