关闭

定义指针类型时*号位置与功能的关系

标签: linuxc语言位置
1026人阅读 评论(0) 收藏 举报
分类:

定义指针类型时*号位置与功能的关系

2007-05-11 10:22lulapub | 分类:其他编程语言 | 浏览1776次
常常看到这样的句子:int* a;和int *a; 请问这*号紧靠在类型后面和紧靠变量前面,在含义上有什么区别吗? 在使用变量时有什么区别吗?
举报| 2007-05-11 10:26提问者采纳
没有区别,但有人建议写成紧靠变量,
比如你想声明两个指针a,b,如果紧靠类型,容易出现错误
int* a,b

以下文字摘自<高质量C++编程指南>:

修饰符 * 和 & 应该靠近数据类型还是该靠近变量名,是个有争议的活题。

若将修饰符 * 靠近数据类型,例如:int* x; 从语义上讲此写法比较直观,即x是int 类型的指针。

上述写法的弊端是容易引起误解,例如:int* x, y; 此处y容易被误解为指针变量。虽然将x和y分行定义可以避免误解,但并不是人人都愿意这样做。
提问者评价
谢谢指导, 我终于揭开了多年心中的疑团,一直觉得这问题有点傻瓜,也不敢问人!
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:347937次
    • 积分:4414
    • 等级:
    • 排名:第6789名
    • 原创:77篇
    • 转载:247篇
    • 译文:0篇
    • 评论:4条
    最新评论