免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: 弹头

[C] a+b=c跟c=a+b为什么不一样? C新新手问题 [复制链接]

论坛徽章:
0
发表于 2008-04-24 00:30 |显示全部楼层
楼上

如果a是一个变量代表基地址,比如说array [0]的指针;b也是一个变量代表偏移地址,那么a+b=c仍然不合法吗?

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
发表于 2008-04-24 00:35 |显示全部楼层
原帖由 motalelf 于 2008-4-24 00:30 发表
楼上

如果a是一个变量代表基地址,比如说array [0]的指针;b也是一个变量代表偏移地址,那么a+b=c仍然不合法吗?

当然不合法。
*(a+b) 才合法。
塑料袋的基础果然还需要重新打一下呀。
就靠读了几天 kernel 那三板斧,还是不行的呀。

论坛徽章:
0
发表于 2008-04-24 00:39 |显示全部楼层
我郁闷,又丢人了。怎么我总丢人???

不过你算个屁,呵呵。

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
发表于 2008-04-24 00:41 |显示全部楼层
原帖由 motalelf 于 2008-4-24 00:39 发表
我郁闷,又丢人了。怎么我总丢人???

不过你算个屁,呵呵。

你他妈在我眼中连屁都不算一个。呵呵。
你在 ChinaUnix 跳腾了好几次,我都懒得搭理你,你今天请教我,这是我第一次回复你。

真的,我再说一遍:你在我眼中,连个屁都算不上!只不过是一个连个象样的工作都找不上的可怜虫罢了。

[ 本帖最后由 flw 于 2008-4-24 00:45 编辑 ]

论坛徽章:
0
发表于 2008-04-24 00:43 |显示全部楼层

回复 #1 弹头 的帖子

1 算术运算符的优先级>赋值运算符
2 赋值运算符采用右结合性
3 左值和右值的区别
c=a+b中
c左值,代表内存中的某个位置
a+b的算术结果放入变量c代表的位置     ..........................................[ok]
a+b=c中
算术优先级高,a+b是一个无法确定的内存地址,此情况下对一个不确定的地址赋值c就会出错了

推荐看下Pointers on C      by     Kenneth A.Reek [US]
这本书对C的许多问题有一个很清楚的阐述
网上有下e版,有卖中文版好像50、60的样子

论坛徽章:
0
发表于 2008-04-24 00:47 |显示全部楼层
原帖由 flw 于 2008-4-24 00:41 发表

你他妈在我眼中连屁都不算一个。呵呵。
你在 ChinaUnix 跳腾了好几次,我都懒得搭理你,你今天请教我,这是我第一次回复你。

真的,我再说一遍:你在我眼中,连个屁都算不上!只不过是一个连个象样的工作 ...



又涉及到鸡和鹰的故事了。

你莫要着急,我再试。

论坛徽章:
0
发表于 2008-04-24 01:04 |显示全部楼层
但凡是我觉得有点真家伙的,尤其是C,OS,嵌入式,我基本上从不开口成脏。

99个地方不如我,只要有1个地方比我强,就一切OK。

不管是喝多了,打盹了,总之,只要犯错误,就是基础还不够强。

不过你也别太小人得志,眼下的工作只是一个小方面,二次面试经历,已经快培养成一个面霸了

论坛徽章:
0
发表于 2008-04-24 08:29 |显示全部楼层
请注意:a+b=c在数学上也仅仅具有等值的意义,表示一个等式,不能对任何一个量赋值。请使用两个连续的等号来表示等值测试(equality test),或者,假如你的意图是将a+b的值赋给c,就应该把c写在左边,表达式a+b写在单等号的右边,像这样:c=a+b。这不仅仅是语法上的问题,从更深层次上来考虑,这已经涉及数学和逻辑。

论坛徽章:
0
发表于 2008-04-24 09:03 |显示全部楼层
哦哦.....了解了,多谢个位给我的帮助,谢谢大家

论坛徽章:
0
发表于 2008-04-24 09:36 |显示全部楼层
。。感觉回帖的各位都被楼主娱乐了一把阿。。。
看看楼主的注册日期。。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP