c语言中%d %%d %%%d 的区别
参考链接:https://zhidao.baidu.com/question/29511246.html
C语言中,%是转义符,也就是和%一起出现的后面的内容会转义后输出,这三种输出的意义是不同的:
1、%d,表示按整型输出后面给出的变量的值。
2、%%d ,这就会被拆成两部分看待,一是“%%”在C语言中就是输出一个“%”,而是“d”就是一个普通字符,所以当“%%d”在一起时,其含义就是输出“%d”这两个字符。
3、%%%d ,3个%在一起,进行拆分的话,%%代表一个“%”字符,后面的%d又代表整型输出变量的值,所以当“%%%d”一起时,其最终含义就是输出一个字符%号再接着按整型输出变量的值。
为了加深理解,我们通过几个例子来了解:
例如:
int i=4;
printf("%d\n",i);//此条输出结果为:4
printf("%%d\n");//此条语句输出结果为:%d
printf("%%%d\n",i,i);//此条语句输出结果为:%4
上述代码执行后,输出结果为:
4
%d
%4