2016-04-24 97 views
3

我阅读文档上cppreference.comstd::getenv()功能和它说为什么GETENV()返回一个非常量字符串

修改通过的getenv返回的字符串调用未定义的行为。

那么为什么函数不返回const char*

+1

我也一直在想这个......但是在过去的25年里它变得更好了......我记得当fopen()期望一个指向可写字符串的指针的时候。 – 2016-04-24 19:40:39

回答

6

那么为什么函数不返回const char*

可能是因为与旧c标准兼容,根本不支持const

+0

似乎有太多的问题是由于需要向后兼容造成的 – Curious

+1

@Curious嗯,至少它是POSIX。 –

+0

你是什么意思? – Curious

相关问题