Tag: 约定

在size_t和unsigned int之间绘制线的位置?

我目前正在使用unsigned int一些用法将size_t转换为我多年来一直在开发的代码库。 我理解两者之间的区别,例如unsigned int可能是32位而指针和size_t可能是64位。 我的问题更多的是关于我应该使用哪一个以及人们在两者之间采用何种惯例。 很明显,内存分配应该使用size_t而不是unsigned int作为参数,或者容器类应该使用size_t作为大小和索引,就像在STL中一样。 这些是在阅读size_t vs unsigned int的好处时引用的常见情况。 但是,在进行代码库转换的过程中,我偶然发现了灰色区域的很多情况,我不确定要使用哪种情况。 例如,如果4×4矩阵行/列索引应该是size_t以保持一致性,无论索引是否在范围[0,3]中,或者屏幕/纹理分辨率应该使用size_t尽管在几千的范围内,或者通常如果合理的话预计对象的数量将在数十的范围内,我仍然应该使用size_t来保持一致性。 您使用什么样的编码约定来在unsigned int和size_t之间进行选择? 表示大小(字节或对象)或索引的所有内容是否始终都是size_t而不管合理预期的范围? 是否有一些广泛接受的size_t约定用于我可以遵循的完善的库中?

用于Emacs用户的C语言格式器/美化器

我是一个Linux用户,正在寻找一个代码美化器,它将获取包含C代码的文件并将其格式化为规范。 具体来说,我期待: 将所有缩进更改为8个空格 一致地格式化代码块 一致地添加换行符 如果它既有默认值又有自定义能力,那就太好了。 我更喜欢免费/开源解决方案。 有什么建议? 更新:我还应该注意,我不是emacs用户,因此这可能是特定于emacs的问题。 我已经更新了标签以反映这一点。