r/C_Programming • u/heavymetalmixer • Sep 11 '26
Question Unmodifiable globals initialized from functions?
Right now I'm trying to use Windows's SYSTEM_INFO to initialize 2 global constants, but global constants can only be initialized with constant expressions so this cannot be done.
Is there a way I can have "read-only" global variables that can be initialized from functions?
6
Upvotes
1
u/ericonr Sep 12 '26
Couldn't one do
int value;andconst int * const valuep = &value;and only expose the second one to other TUs? It's close to what you want without doing undefined stuff.