读书人

请问一个关于printf的用法

发布时间: 2012-12-30 10:43:15 作者: rapoo

请教一个关于printf的用法
有程序如下
static void
printbin(int n, int digits)
{
int i;
char output[128];
for(i = 0; i < digits; ++i) {
output[digits - i - 1] = (n & 1) + '0';
n >>= 1;
}
output[i] = 0;
printf(output);
}
请问这里的printf是什么用法,有什么效果
[解决办法]
被处理过了吧 例如:#define printf(a) printf("%c",a)
[解决办法]
应该会报错。
[解决办法]
本意应该是如下代码所示,以二进制的方式打印n:


void printbin(int n, int digits)
{
int i;
char output[128];
for(i = 0; i < digits; ++i) {
output[digits - i - 1] = (n & 1) + '0';
n >>= 1;
}
output[i] = 0;
printf("%s\n", output);
}

读书人网 >C语言

热点推荐