作者LPH66 ((short)(-15074))
看板Programming
标题Re: C语言当中...某变数=(叙述1,叙述2);
时间Wed Dec 31 07:52:49 2008
※ 引述《[email protected] (还是小帅哥 ^_^)》之铭言:
: 请问这是什麽意思呢?可否解释一下.
: 在国外的网站上看到这种用法,
: 书上似乎没有提到过...
: *_*
如果两个expression以逗号分开且并不是在参数列上的话
则表示两个式子依序执行 且以後者之值为全式之值
多个逗号连结则由左而右 以最右者为值
要注意的是 , 的优先序是最低的 所以常常需要以()来强制分隔式子
标题的写法即是叙述1和叙述2依序执行後将叙述2之值指定给变数
维基百科上说它也算做一个sequence point
所以是可以确定前面事情做完後的side effect会先结算再做後面的事
(例如若a=3 则 (a++,a*9) 的结果是36)
--
'You've sort of made up for it tonight,' said Harry. 'Getting the
sword. Finishing the Horcrux. Saving my life.'
'That makes me sound a lot cooler then I was,' Ron mumbled.
'Stuff like that always sounds cooler then it really was,' said
Harry. 'I've been trying to tell you that for years.'
-- Harry Potter and the Deathly Hollows, P.308
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.112.30.84
※ 编辑: LPH66 来自: 140.112.30.84 (12/31 07:52)
※ 编辑: LPH66 来自: 140.112.30.84 (12/31 07:53)
※ 编辑: LPH66 来自: 140.112.30.84 (12/31 07:55)
1F:推 Dungeon:专业!没注意可以这样用! ><218.170.107.163 12/31 23:12