c - 在C中格式化字符,理由

标签 c printing formatting

您好,我希望我的下一个输出(在本例中就是字母)在上一个输出之后输出 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/

相关文章:

c++ - 无需换行即可获取输入

c - 为什么我的代码会出现 `Structure-return value does not match function type` 编译错误?

internet-explorer - 在 Internet Explorer 中模拟打印媒体

regex - 正则表达式中的 C# 字符串格式占位符

Eclipse:自动换行到指定宽度

java - Gwt java打印滚动面板的内容

c - 从 CSV 中的行读取值时丢失字符串中的最后一个字符

C代码编译

c - 如何在 c 中使用 fprintf 进行文件对齐?

java - 从 Java 打印失败并显示 'pstopdffilter/pstocupsraster failed with err number -31000'