我知道设计模式通常与面向对象编程有关,但是您是否有一些在编写C程序时经常使用的模式呢?

我对classic OO模式的简单翻译不感兴趣,请不要提及达夫的设备

推荐答案

我最喜欢的是Adam Tornhill岁以下的"C中的模式"系列:

还有:我一直认为goto是一个非常可怜的人用来装饰图案的工具.

Update:我强烈建议使用Rust(rust-lang.org)而不是C,除非需要使用C.Rust具有C的所有优点,包括速度和与C的二进制库兼容性,但编译器会处理大部分复杂度,以确保代码是内存安全的,并且不包含数据争用.它还具有可移植性,有一个用于常见任务的标准库,并且更易于为各种设计模式编程.

C++相关问答推荐

如何用C(使用两个s补数算术的32位程序)计算

C strlen on char array

在32位处理器上优化53—32位模计算>

单指针和空参数列表之间的函数指针兼容性

如果包含路径不存在,我的编译器可以被配置为出错吗?(GCC、MSVC)

C在声明带有值的数组时,声明大小有用吗?

每次除以或乘以整数都会得到0.0000

用C++从外部ELF符号读取值

如何按顺序将所有CSV文件数据读入 struct 数组?

如何在C++中安全地进行浮点运算

不同原型的危险C函数是可能的

搜索使用int代替time_t的用法

C程序向服务器发送TCPRST

从BIOS(8086)中读取刻度需要多少?

带有数组指针的 struct 在print_stack()函数中打印随机数

C中的char**v*char[]

将char*铸造为空**

为什么 int32_t 和 int16_t 在 printf 输出中具有相同的位数?

使用fread()函数读取txt文件

在 C/C++ 中原子按位与字节的最佳方法?