Re: can't initialize a constant using another constant?

Glynn Clements <[email protected]>
Newsgroups org.kernel.vger.linux-c-programming
Message-ID <[email protected]>
Shriramana Sharma wrote:

> Quite some time since I wrote. I hope you are all keeping well. :)
> 
> A strange thing I ran across this evening. I was not allowed to do:
> 
> const double lunarSynodicMonth = 29.53059 ;
> const double daysLunarPhaseAngleTakesPerDegree = lunarSynodicMonth / 360.0 ;
> 
> I got the following error:
> 
> wdf-karanas.c:17: error: initializer element is not constant
> make: *** [wdf-karanas.o] Error 1
> 
> I would be grateful if anyone could shed some light. TIA.

In C, "const" is only relevant to pointer targets. Adding the "const"
modifier to a variable has no effect.

You need to change lunarSynodicMonth to a macro (#define) if you want
to be able to use it in an initialiser.

-- 
Glynn Clements <[email protected]>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.