这个问题不太可能帮助任何 future 的访客;它只与一个小地理区域、一个特定时刻或一个非常狭窄的情况相关,而这些情况通常不适用于互联网的全局受众。如需帮助使这个问题更广泛地适用,visit the help center .
9年前关闭。
假设我正在为设备编写驱动程序。有寄存器列表(A)需要在一些程序(B)中专门处理。一段时间后,有些人可能会发现某些寄存器(C)的值需要根据不同的情况更改(例如对于无线卡,情况可能是不同的 channel )。但是如果他们决定这样做,他们还需要将此寄存器(C)添加到列表(A)中,以便例程(B)也可以专门处理寄存器(C)。
所以问题是这种类型的寄存器在开发的早期阶段可能会发现很多或经常发现。我想知道是否有很好的方法来保持这一点。
我正在考虑静态维护它并在某些程序员在寄存器上执行某些操作时忘记与列表同步时引发编译错误。但这看起来是一个糟糕的选择(http://stackoverflow.com/questions/12412742/how-to-throw-a-compiling-error-in-c)
要动态维护这样的列表(A),对于驱动程序来说可能太重了......有什么提示吗?
让我将讨论限制在使用 gcc 编译器的 linux 驱动程序上。
最佳答案
您可以让驱动程序维护列表并使用 ioctl 调用添加或删除项目。
这会很糟糕。
关于c - C中的列表维护问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12415310/