定义指针的一个问题比如:int* a; int *a; int * a; 有区别么?

yuyu20001021 2007-10-02 09:58:39
我想大概没区别,为什么没规范呢?
...全文
194 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
飞哥 2007-10-31
  • 打赏
  • 举报
回复
咋写对于编译器来说是一样的

即使
int
*
a
;
但是对于代码编写维护人员来说is another thing
int *a;应该是一个比较好的选择(i think so)
baihacker 2007-10-31
  • 打赏
  • 举报
回复
没有区别,个人习惯而已!
我啃 2007-10-03
  • 打赏
  • 举报
回复
与老大不同,支持创兄和lddLinan
同理可以应用在引用上
yuanchuang 2007-10-03
  • 打赏
  • 举报
回复
跟老大不一样,我比较倾向于
int *a;
感觉这样更明确表示a是一个指针
也和int *a, *b;这种定义方式对应起来了。
晨星 2007-10-03
  • 打赏
  • 举报
回复
没区别,C/C++语言程序的格式本来就灵活。
就好像缩进,也不是必须的,理论上,除了宏定义之外,整个程序,不管多大,都可以写在一行上,只是没人这样做。

对于楼主的例子,在词法分期的早期阶段,它们都会被识别成一个int,一个*,一个a和一个分号,并进一步交给语法分析器去处理。

我个人倒是更倾向于
int* a;
这样把类型信息集中在了一起,至于“declare multi-variables in one single expression”的情况,这个本来就应该尽量避免。
yuanchuang 2007-10-03
  • 打赏
  • 举报
回复
从语法的角度来看没区别,从token角度来看,不一样
icydew2000 2007-10-03
  • 打赏
  • 举报
回复
I really support what lddLinan said.
lddLinan 2007-10-02
  • 打赏
  • 举报
回复
I was taught that we should prefer the form of "int *a" since it makes much less comfusing when you declear multi-variables in one single expression.
codeandcoder 2007-10-02
  • 打赏
  • 举报
回复
没有什么区别吧,只是不同的书写形式,我以前也遇到过同样的疑问,应该是不同人的编程风格。

64,683

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧