gpt4 book ai didi

c - shell 环境变量的全局与局部静态变量

转载 作者:太空宇宙 更新时间:2023-11-04 04:06:13 25 4
gpt4 key购买 nike

我正在实现一个简单的 shell,我希望能够通过 shell 设置环境变量。使用简单的语法,例如 set var = hello

我有一个这样的结构来表示一个环境变量:

typedef struct {
char *name;
char *value;
}

我正在考虑创建一个上述结构的动态数组来保存所有环境变量。问题是我不确定如何正确实现。

现在,我不确定是否应该在函数或全局变量中将数组设为静态。哪一个会更好?为什么?

最佳答案

这完全取决于需要从哪里访问变量。如果只在单个函数中需要它们,那么静态局部变量最有意义。如果他们需要“文件范围”,那么全局文件(仍然是静态的)最有意义。否则,一个全局的。

另一种更适合 future 扩展的选择是创建一个文件静态变量集,其中包含访问函数以获取和设置名称/值组合,并在其他任何地方使用该 API。如果您突然需要存储大量名称/值对(例如,存储到 b 树而不是数组中),那么您可以稍后将存储机制更改为更高效的机制。

关于c - shell 环境变量的全局与局部静态变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5616351/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com