如何组织我的c代码

时间:2010-09-05 04:07:46

标签: c

我有大的主文件包含大约7,000行C代码。如果我想使这个代码模块化并将代码与此文件分开。将函数从文件中分离出来的主要标准是什么,以及应该保留在文件中的函数。

3 个答案:

答案 0 :(得分:6)

按功能/责任分手。

例如,将所有字符串处理放在一个模块/文件中,将文件处理放在另一个模块/文件中。

答案 1 :(得分:6)

  • 遵循先前的建议。
  • 通过创建函数消除任何重复或几乎重复的代码。
  • 按功能和依赖性进行组织。模块应具有尽可能少的相互依赖性。
  • 关注SOLID Principles以及其他设计模式和实践(所有这些都可以在某种程度上在C中实现)。

我喜欢使用自上而下的代码分解。例如:

main()
{
    Initialize();
    Introduce();
    while (some_condition)
    {
        DoSomething();
        DoSomethingElse();
    }
    SayGoodbye();
    Shutdown();
}

main()应简短而重要,并让您快速了解该计划从高级别开始的工作。这些功能中的每一个都可以以类似的方式分解。这应该继续,直到最低级别的功能具有单一的,集中的目的(逻辑模块化)。这些函数可以放入其他.c / .h文件中,以实现物理模块化。

祝你好运!

答案 2 :(得分:4)

这是一个简单的衡量标准:.h文件中的声明越少,模块化程度就越高。按功能分组很重要。 extern 声明是非常糟糕的,给那些额外的'惩罚'。