为了账号安全,请及时绑定邮箱和手机立即绑定

宣告指针; 类型和名称之间的空格左侧或右侧的星号?

宣告指针; 类型和名称之间的空格左侧或右侧的星号?

C++ C
呼啦一阵风 2019-08-12 15:47:30
宣告指针; 类型和名称之间的空格左侧或右侧的星号?我已经在很多代码中看到了这个的混合版本。(顺便说一下,这适用于C和C ++。)人们似乎用两种方式之一来声明指针,我不知道哪一个是正确的,如果它甚至是重要的。第一种方法是将星号放在类型名称旁边,如下所示:someType* somePtr;第二种方法是将星号放在变量名称旁边,如下所示:someType *somePtr;这已经让我疯了一段时间了。是否有任何标准方法来声明指针?甚至指针是如何声明的?我之前使用过两个声明,并且我知道编译器并不关心它是哪种方式。然而,事实上,我已经看到以两种不同的方式宣告指针,这让我相信它背后有一个原因。我很好奇,如果任何一种方法在某些方面更具可读性或逻辑性,那我就错过了。
查看完整描述

3 回答

?
aluckdog

TA贡献1847条经验 获得超7个赞

没关系。现在有人会把这个问题作为一个骗局来解决,int* a如果你在同一个声明中声明多个变量int *a,而另一个人会更好地反映代码的语法结构,那么其他人将展示如何打破方式,而另一个人将展示Stroustrup喜欢int* a这样的。

很多意见,但这里没有“正确”的方式。


查看完整回答
反对 回复 2019-08-12
?
森林海

TA贡献2011条经验 获得超2个赞

没关系,这是个人喜好。

有些人喜欢将类型保持在一起:

int* p;

其他人说它应该在变量旁边,因为以下内容:

int *p, x;//declare 1 int pointer and 1 int
int *p, *x;//declare 2 int pointers.

随着时间的推移,你会忽略这一点并接受两种变化。


查看完整回答
反对 回复 2019-08-12
  • 3 回答
  • 0 关注
  • 609 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信