C和指针 第4章 语句 4.2 表达式语句

4.2 表达式语句
    C语言并不存在专门的“赋值语句”,C语言把赋值看成是一种操作,就像加法和减法一样,所以赋值就在表达式内进行。 
    只要表达式后面加上一个分号,就可以把表达式转变为语句。下面这两个表达式实际上是表达式语句,而不是赋值语句。
    x = y + 3;
    ch = getchar();
    警告:
    理解这点区别非常重要,因为像下面这样的语句也是完全合法的:
    y + 3;
    getchar();
    当这些语句被执行时,表达式被求值,但它们的结果并不保存于任何地方,因为它们并未使用赋值操作符。因此,第1条语句并不具备任何效果,而第2条语句则读取输入中的下一个字符,但接着便被丢弃。实际上,它有可能影响程序的结果,但其方式过于微妙。
    printf("Hello world!\n");
    printf是一个函数,函数将会返回一个值,printf函数的返回值(它实际打印的字符数)我们通常并不关心,所以弃之不理也很正常。所谓语句“没有效果”只是表示表达式的值被忽略。printf函数所执行的是有用的工作,这类作用称为“副作用”(side effect)。
    a++;
    操作数++将增加变量a的值,这就是它的副作用。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

weixin_40186813

你的能量无可限量。

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值