标签: c memory-management
我认为它放在堆栈中,因为字符串“Hello world”是函数 printf 的参数?
如果我错了,有人可以给出并解释正确答案吗?
答案 0 :(得分:1)
字符串文字具有静态存储持续时间。通常它们存储在只读存储器中。它们通常分为.rodata(linux)或.rdata(windows)。将字符串文字作为函数参数提供的行为与预先将其定义为const char *s = "Hello world"的行为相同。
const char *s = "Hello world"
看看这些讨论: