关于printf打印前置++与后置++

原创 2017年01月03日 14:28:41
void fun(){
	int a = 8;
	printf("%d %d %d %d %d %d\n", ++a, --a, a++, a--, -a++, -a--);
}

经常会遇到如上面这种无聊的问题,这是一道无厘头的面试题。

这道题目的答案,完全取决于编译器,答案并不唯一。

编程中的复合语句,最好是拆分开,比如int a = f()*g() + h();它的调用顺序,不一定是执行完f()再执行g()我们唯一能确定的只是*会再+前面完成。

如果f(),g()中存在共用的全局变量,这么调用很危险。

版权声明:本文为博主原创文章,未经博主允许不得转载。

前置++与后置++

  • 2015年05月16日 18:55
  • 17KB
  • 下载

实现C++类中对于前置++,后置++的重载

建立一个复数类,在类中实现构造函数、析构函数、拷贝构造和运算符重载 在运算符重载的实现过程中,可以发现,前置++和后置++在实现上有区别 由于前置++是先实现++,再进行使用,所以在实现过程中比较简单...

前置后置环绕异常通知

  • 2016年08月05日 21:09
  • 2.49MB
  • 下载

Spring框架——AOP前置、后置、环绕、异常通知

通知类型: 步骤: 1. 定义接口 2. 编写对象(被代理对象=目标对象) 3. 编写通知(前置通知目标方法调用前调用) 4. 在beans.xml文件配置 ...

C/C++中自增自减的前置和后置区别

11

前置++和后置++的区别

今天在阅读《google c++ 编程风格》的文档的时候,5.10. 前置自增和自减:有一句话引起了我的注意: 对于迭代器和其他模板对象使用前缀形式 (++i) 的自增, 自减运算符.,理由是 前置...

前置++ 和后置++的区别(C++ 为什么不叫++C)

这篇文章不是讨论(i++)+(i++)+(i++)的计算结果,更不是讨论(i++)+(++i)+(i++)。   在C++教程中,我们都会学到:i++和++i是两个表达式,他们都会对i进行...

Thinkphp 控制器内初始化方法_initialize 及前置后置方法

定义了该初始化方法后,无论执行该控制器的其他方法,都会首先执行一次_initialize()方法。 namespace Home\Controller; use Think\Controller; ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:关于printf打印前置++与后置++
举报原因:
原因补充:

(最多只允许输入30个字)