在 C/C 中声明指针变量:语法说明
在 C 和 C 中的指针领域,存在细微的语法变化这引发了一些争论:星号 (*) 在指针声明中的位置。一些程序员选择符号 (a):
而其他程序员则喜欢 (b):
这两种不同符号背后的基本原理是什么?
C 语言的创建者 Bjarne Stroustrup 阐明了这个问题。他解释说,选择并不取决于正确性,而是取决于风格偏好和编程重点。
在 C 中,表达式优先于声明,而声明通常被认为不太重要。然而,C 非常强调类型。
C 编程风格的拥护者喜欢符号 (a),认为“*p”代表指针的取消引用值,与 C 的语法结构保持一致
同时,C 编程风格的支持者更喜欢符号 (b),强调指针变量本身的类型。符号(b)中“p”的类型被明确标识为“int*”,突出了它作为整数指针的作用。
从可读性的角度来看,符号(b)显得更加一致,尤其是在一行中声明多个指针时。将星号与变量放在一起,如“char c,d”,与“c”和“d”都是指向字符的指针的直觉一致。
最终,决定符号(a)和(b)之间的选择是个人喜好的问题。然而,鉴于 C 语言的日益流行及其对类型的重视,通常建议使用符号 (b) 来增强代码的清晰度和可读性。
以上是C/C 指针声明:`char* p;` 与 `char *p;` – 有什么区别?的详细内容。更多信息请关注PHP中文网其他相关文章!