以下程序产出12480作为输出。%c如何在C程序中打印值?
#include<stdio.h>
int main()
{
char c=48;
int i, mask=01;
for(i=1; i<=5; i++)
{
printf("%c", c|mask);
mask = mask<<1;
}
return 0;
}
现在,我的问题是,“%c”如何在每个循环后打印整数值1,2,4,8,0。它应该打印一个字符作为一个值。如果我简单地使用下面的程序,
#include<stdio.h>
int main()
{
char c=48;
int i, mask=01;
printf("%c",c);
return 0;
}
它打印0,但是当我更改标识符%C至%d它打印48。任何人都可以告诉我这是怎么回事!?
啊!为此非常感谢! – Chandeep 2012-02-05 11:38:50
只是一件事48的二进制是110000而不是110001 – Chandeep 2012-02-05 11:41:53
@ user975234哎呀,我记住了最后的结果,所以错误键入它。 – 2012-02-05 11:47:49