哪些段常量数据存储?

kad*_*ina 1 c linux

我试图了解存储哪个段常量数据.

例如

const int x = 100
Run Code Online (Sandbox Code Playgroud)

1)哪里存储了x?在代码段或数据段?

2)初始化数据段中是否存在"只读"数据段?

Die*_*Epp 7

根据编译器,编译器标志,链接器,链接器标志和周围代码的具体情况,数据将存储在任何段或多个段中,或根本不存储段.

在Linux/ELF上,如果它存储在某个地方,它通常会存储在.rodata具有r-x权限的段内的部分中.据我所知,ELF细分没有名字.

但是,在许多情况下,这些常量将被内联.