分享下 C 语言的奇技淫巧

2015-01-06 19:47:35 +08:00
 alexapollo

引用贾扬清的回答:

C有一个鲜为人知的运算符叫”趋向于”, 写作“-->”。
比如说如果要实现一个倒数的程序,我们可以定义一个变量x,然后让它趋向于0:
#include <stdio.h>

int main(int argc, char** argv) {
  int x = 10;
  while (x --> 0) {
    printf("%d ", x);
  }
  return 0;
}
会打印出:
9 8 7 6 5 4 3 2 1 0

补充:

C有另一个更鲜为人知的运算符叫做“快速趋向于”,比如同样是从10到0,这里这么写
#include <stdio.h>

int main(int argc, char** argv) {
  int x = 10;
  while (0 <---- x) {
    printf("%d ", x);
  }
  return 0;
}
会打印出:
8 6 4 2

我的完整回答(语法不一样好难贴过来): http://zhi.hu/dmhV

7657 次点击
所在节点    程序员
48 条回复
wittyfox
2015-01-06 19:58:56 +08:00
--> 步长是 1
----> 步长是 2
那么
------> 步长是 3?
--------> 步长是 4?
--------------------> 步长是 10?
xmbaozi
2015-01-06 19:59:53 +08:00
x--;x>0
下面同理,是这样吗
xmbaozi
2015-01-06 20:02:26 +08:00
我想过简化php的while写法,然后就是lz那样了。
Valyrian
2015-01-06 20:11:22 +08:00
别骗人了,其实是这个意思
```while ( (x--) > 0 )```
timothyye
2015-01-06 20:16:18 +08:00
感觉就是自增和自减吧?
那应该还有个操作符叫x++>
tobyxdd
2015-01-06 20:35:49 +08:00
不就是减一再比大小吗
omegaga
2015-01-06 20:36:16 +08:00
这难道不是一个冷笑话吗…
nicai000
2015-01-06 20:38:15 +08:00
那是--和-- --, 还趋向于.... 好笑
zyue
2015-01-06 20:49:31 +08:00
哈哈 自减变成趋向于了
xpol
2015-01-06 20:56:32 +08:00
以前还被强制类型转换骗过。
mortal
2015-01-06 21:34:52 +08:00
奇技淫巧…
让我笑会先 2333
ooxxcc
2015-01-06 21:36:52 +08:00
我还真被忽悠了……
Kilerd
2015-01-06 21:42:20 +08:00
我可以理解为(x--)>0吗
xdeng
2015-01-06 21:49:19 +08:00
瞎说根本没这个运算符。骗小白还可以。明明是x-- 然后再> --优先级高
xdeng
2015-01-06 21:50:25 +08:00
<---- 是--再--再<
233
2015-01-06 21:58:55 +08:00
lz都说了,下面是他完整的回答
spacewander
2015-01-06 22:13:50 +08:00
这贴发得真不是时候,应该等到3个月后的再前5天才发。
owlsec
2015-01-06 22:17:25 +08:00
让我笑一会!妈叉啊笑死我了!
cuiweiqiang
2015-01-06 22:29:21 +08:00
上当了
pandada8
2015-01-06 22:31:00 +08:00
如此机智

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/159776

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX