Skip to content
败犬日报 2025-12-28

败犬日报 2025-12-28

1. 写 int* p; 还是 int *p;

喜欢哪个用哪个,用 std::add_pointer_t<int> p; 都没人拦着你(并非)。clang-format 提供了 PointerAlignment 支持三种风格(靠左 / 右 / 中间 int * p;)。

硬要推荐一个那就靠左 int* p;

int* p; 可以把 int* 直接读成 int 指针,更符合直觉。

int *p; 是因为 C 设计的时候,让定义和使用的写法一致。int *p; 就是当你用 *p 就能得到一个 int,int (*p)[10] 就是当你用 (*p)[i] 就能得到一个 int。

对于 int* p, q; 的问题,建议一个语句只定义一个变量。