我是C语言的初学者,我想知道是否有一种方法可以将我的字符计数与putchar()函数打印在同一行上而无需换行。
#include <stdio.h>
int main(void) {
int c, i = 0;
while ((c = getchar()) != EOF) {
i++;
if(putchar(c) == '\n'){
printf(":%d\n", i - 1);
i = 0;
}
}
return 0;
}
例如,如果运行此命令,我将得到:
输入
This is the first line.
输出
This is the first line.
:23
有没有一种方法可以使输出看起来像这样?
This is the first line.:23
答案 0 :(得分:2)
简单:由于putchar
会在被调用的那一刻输出,因此请不要输出还:
if (c == '\n') {
// omit newline here so that no empty lines are printed
printf(":%d", i - 1);
i = 0;
}
putchar(c);