分享下 C 语言的奇技淫巧 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
alexapollo

分享下 C 语言的奇技淫巧

  •  
  •   alexapollo
    geekan 2015 年 1 月 6 日 8223 次点击
    这是一个创建于 4128 天前的主题,其中的信息可能已经有所发展或是发生改变。

    引用贾扬清的回答:

    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

    48 条回复    2015-01-11 16:37:45 +08:00
    wittyfox
        1
    wittyfox  
       2015 年 1 月 6 日
    --> 步长是 1
    ----> 步长是 2
    那么
    ------> 步长是 3?
    --------> 步长是 4?
    --------------------> 步长是 10?
    xmbaozi
        2
    xmbaozi  
       2015 年 1 月 6 日 via Android
    x--;x>0
    下面同理,是这样吗
    xmbaozi
        3
    xmbaozi  
       2015 年 1 月 6 日 via Android
    我想过简化php的while写法,然后就是lz那样了。
    Valyrian
        4
    Valyrian  
       2015 年 1 月 6 日   1
    别骗人了,其实是这个意思
    ```while ( (x--) > 0 )```
    timothyye
        5
    timothyye  
       2015 年 1 月 6 日 via Android   1
    感觉就是自增和自减吧?
    那应该还有个操作符叫x++>
    tobyxdd
        6
    tobyxdd  
       2015 年 1 月 6 日 via Android
    不就是减一再比大小吗
    omegaga
        7
    omegaga  
       2015 年 1 月 6 日 via Android   6
    这难道不是一个冷笑话吗…
    nicai000
        8
    nicai000  
       2015 年 1 月 6 日   1
    那是--和-- --, 还趋向于.... 好笑
    zyue
        9
    zyue  
       2015 年 1 月 6 日
    哈哈 自减变成趋向于了
    xpol
        10
    xpol  
       2015 年 1 月 6 日
    以前还被强制类型转换骗过。
    mortal
        11
    mortal  
       2015 年 1 月 6 日
    奇技淫巧…
    让我笑会先 2333
    47jm9ozp
        12
    47jm9ozp  
       2015 年 1 月 6 日
    我还真被忽悠了……
    Kilerd
        13
    Kilerd  
       2015 年 1 月 6 日 via Android
    我可以理解为(x--)>0吗
    46fo
        14
    46fo  
       2015 年 1 月 6 日 via iPhone
    瞎说根本没这个运算符。骗小白还可以。明明是x-- 然后再> --优先级高
    46fo
        15
    46fo  
       2015 年 1 月 6 日 via iPhone
    <---- 是--再--再<
    233
        16
    233  
       2015 年 1 月 6 日
    lz都说了,下面是他完整的回答
    spacewander
        17
    spacewander  
       2015 年 1 月 6 日
    这贴发得真不是时候,应该等到3个月后的再前5天才发。
    owlsec
        18
    owlsec  
       2015 年 1 月 6 日
    让我笑一会!妈叉啊笑死我了!
    cuiweiqiang
        19
    cuiweiqiang  
       2015 年 1 月 6 日
    上当了
    pandada8
        20
    pandada8  
       2015 年 1 月 6 日
    如此机智
    erenno1
        21
    erenno1  
       2015 年 1 月 6 日
    笑尿了~
    BGLL
        22
    BGLL  
       2015 年 1 月 6 日
    被骗了,我说怎么没听过 -->,还去查了各版C运算符表…
    xbb7766
        23
    xbb7766  
       2015 年 1 月 6 日
    论空格在排版中的妙用~~
    ligyxy
        24
    ligyxy  
       2015 年 1 月 6 日
    快速趋向于。。真的笑了
    timekiller
        25
    timekiller  
       2015 年 1 月 7 日 via Android
    好好笑~铜币送给你~
    Delbert
        26
    Delbert  
       2015 年 1 月 7 日
    笑死了。收藏去骗人。
    muziyue
        27
    muziyue  
       2015 年 1 月 7 日
    ls怎么这么多认真的……
    guoqiao
        28
    guoqiao  
       2015 年 1 月 7 日
    本月最佳:D
    ChangeTheWorld
        29
    ChangeTheWorld  
       2015 年 1 月 7 日
    楼主你真是个人才,人工智能的未来靠你了!
    xiaozi
        30
    xiaozi  
       2015 年 1 月 7 日
    这几天整理了一下几种编程语言的奇技淫巧

    http://tool.lu/tip
    lushl9301
        31
    lushl9301  
       2015 年 1 月 7 日
    diao diao da...

    =. =|||
    kokochen
        32
    kokochen  
       2015 年 1 月 7 日
    被骗了- -
    mcone
        33
    mcone  
       2015 年 1 月 7 日   1
    xylophone21
        34
    xylophone21  
       2015 年 1 月 7 日
    差点被骗了,哈哈
    caomaocao
        35
    caomaocao  
       2015 年 1 月 7 日
    我真的拿到IDE里去试了.......
    caomaocao
        36
    caomaocao  
       2015 年 1 月 7 日
    为自己的扎实基本功蠢哭了....
    zealic
        37
    zealic  
       2015 年 1 月 7 日
    哇,好牛逼啊。
    我也知道两个神奇的隐藏技巧, -->> 以及 --<< 操作符。
    bastijr
        38
    bastijr  
       2015 年 1 月 7 日
    哈哈!原来是:
    while( (x--) > 0 )
    semicircle21
        39
    semicircle21  
       2015 年 1 月 7 日
    2333333333333333
    wdy1184
        40
    wdy1184  
       2015 年 1 月 7 日
    @bastijr 有道理啊
    acros
        41
    acros  
       2015 年 1 月 7 日
    我的第一个反应竟然是竟然还有编译器支持这个运算符

    我了个去
    Bitex
        42
    Bitex  
       2015 年 1 月 7 日
    第二个例子确定可以运行?--i不是左值吧
    a1996
        43
    a1996  
       2015 年 1 月 7 日
    妈蛋我也信了
    josephok
        44
    josephok  
       2015 年 1 月 7 日
    真机智。
    cw35
        45
    cw35  
       2015 年 1 月 7 日
    x-- > 0
    0 < --x
    luikore
        46
    luikore  
       2015 年 1 月 7 日
    patrickstar
        47
    patrickstar  
       2015 年 1 月 7 日
    第一次看见这个操作符,哪天试一下子
    mingyun
        48
    mingyun  
       2015 年 1 月 11 日
    @xiaozi 有意思
    关于     帮助文档     自助推广系统   &nsp; 博客     API     FAQ     Solana     2791 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 155ms UTC 12:39 PVG 20:39 LAX 05:39 JFK 08:39
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86