那些骚操作

交换两个变量值 #

int main(){
	int a=1,b=2;
	a = a + b - (b = a);//a  + = b - (b = a);
	a = a ^ b ^ (b = a);//a  ^ = b ^ (b = a);
	a ^ = b ^ =a ^ = b;

}

c printf 控制符 #

一个完整的占位符格式如下,其中,[ ]表示其中的内容为可选项。在下述格式中,从前住后依次是%、标志(flags)、输出宽度(width)、精度(.precision)、类型长度(length)以及说明符(specifier)。其中,%以及末尾的specifier都是必需的。

%[flags][width][.precision][length]specifier

specifier说明符处于一个占位符的末尾,是占位符不可或缺的组成部分,它定义了printf()函数以何种类型来解释和输出与占位符匹配的参数。

# printf()使用占位符精细控制输出格式