c入门之printf函数的返回值

    说到printf这个函数,那学习C的人呢肯定都知道,它就是个输出函数嘛,这还能不知道。我想告诉大家的是,以前啊,我也这么以为,不就是个输出函数嘛,有什么了不起,谁不会用啊!可是有一天,我看到了这个代码:

    

    其实分开看,都认识,但是这么合起来,看到它瞬间就蒙圈了,printf怎么还能这么用?不过那个时候为了证明我是知道、了解这个函数的,我回答这行代码运行结果是43。可能有人和我的答案一样。

    结果大家应该都猜出来,这个答案当然是错的啦,我被事实啪啪打脸。

        

    运行结果是4321,大家可能会奇怪,printf不是输出函数嘛?43还能理解,那么21是怎么来的呢?怎么就毫无征兆蹦出来了。

    请大家看下面这张图片:
  

    穿插几句题外话啊,推荐一个软件给大家:MSDN——可以用来查询各个函数的用法和作用。下面回到主题:

    这张图片对printf这个函数做了详细的介绍。

    printf函数打印一个输出结果到标准输出流,它是有参数的,同时呢,它所需的头文件是<stdio.h>。再看最下面的Return Value返回值一栏,它告诉我们函数返回打印的字符的数量,或如果发生错误的话,返回一个负的值。也就是说,printf这个函数的返回值是它所打印字符的数量。

    看完返回值一栏大家就明白是怎么回事了。

    括号最里面的printf打印输出一个值43,这个时候它给相邻的printf函数返回了43这个值的个数2,这个printf会给最外层的printf函数返回2的个数1,这样一层层运行,最后输出的值就是4321了。
   
    如有错误,欢迎各位读者指出,感谢您的阅读!

  • 5
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值