您好,我希望我的下一个输出(在本例中就是字母)在上一个输出之后输出 8 个空格。这适用于第一个字符,但之后的 printf 语句不起作用。它在第一个 printf 语句之后立即打印,我试图将其设置为 8。问题是,当我使用 '\t' 时,这对我的程序没有帮助,b/c 我正在做一个 Hook 拼图跳跃,我需要它是准确的。我尝试了 - 和 + 但它不起作用。所以我希望将“A”打印在变量 pa 右侧的八个空格处。有人知道这里用什么吗?
for ( row =1 ; row <= 5; row++ ){
for ( column = 1; column <= row; column++ ) {
if ( row == 1 ) {
printf("%+8c", pa);
printf("%-8");
printf("A");
}
最佳答案
如果要打印特定数量的空格,可以执行以下操作
printf("%*c", n, ' ');
其中 n 是某个整数,也就是要打印的空格数。因此,根据您的情况,您可以在 if 语句中尝试以下操作,
printf("%c%*c%c%*c", pa, 8, ' ', 'A', 8, ' ');
它将首先打印 pa
,然后是 8 个空格,然后是 A
,然后是另外 8 个空格。
关于c - 在C中格式化字符,理由,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42015698/