
书里一个转义字符应用看不懂啊
#include<stdio.h>main(){printf("12\t34\r56\n78\b910");printf("\n\052,\x26");}输出后为啥是56...
#include<stdio.h>
main()
{
printf("12\t34\r56\n7 8\b9 10");
printf("\n\052,\x26");
}
输出后为啥是
56 34
7 9 10 展开
main()
{
printf("12\t34\r56\n7 8\b9 10");
printf("\n\052,\x26");
}
输出后为啥是
56 34
7 9 10 展开
1个回答
展开全部
分开看会容易解释点。
注意!下面用^代表光标:
#include<stdio.h>
void main()
{
printf("12\t34"); //1
printf("\r56"); //2
printf("\n7 8"); //3
printf("\b9 10"); //4
printf("\n\052,\x26"); //5
}
首先执行第一句printf("12\t34");
然后控制台会输出:
12 34
^光标指向这里
然后执行第二句printf("\r56");
由于\r是回到行首
12 34
^光标指向这里
再输出56,把12覆盖了
因此控制台显示:
56 34
^光标这里
然后执行第三句printf("\n7 8");
由于\n是换行
光标指向新行并输出:
56 34
7 8
^光标指向这里
然后执行第四句printf("\b9 10");
由于\b是退格符,光标后退一格
56 34
7 8
^光标指向这里,对准了8
输出9 10覆盖了8:
56 34
7 9 10
^光标指向这里
然后执行第五句:printf("\n\052,\x26");
换行并输出八进制52,和十六进制26,分别对应*&,所以输出*,&
56 34
7 9 10
*,&
此时输出完毕。
望采纳谢谢。
追问
\t是到下一制表位置 啥叫下一制表位置
追答
\t 它的作用是“跳格”,即到下一个“制表位置”,在系统中一个“制表区”占8列。
就是用它会跳到下一个对齐8格的地方。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询