gpt4 book ai didi

C printf缩进问题

转载 作者:太空宇宙 更新时间:2023-11-04 08:31:53 25 4
gpt4 key购买 nike

我希望正确缩进下面的内容,我希望 DG1, DG2, DG3, DG4 应该在同一列中,是否有最佳方法?谢谢,任何指点或帮助将不胜感激。


      Test                                                                 DG1                                                                 
DG2
DG3
DG3

sh-4.2#^C

#include <stdio.h>

int main()
{
printf("%-64s\t%s\n", "List", "Bindings");
printf("-----------------------------------------------------------------------------\n");

const char *curr_dl_result[] = {
[0] = "DG1",
[1] = "DG2",
[2] = "DG3",
[3] = "DG3",
};
int dg_count = 4;
int j = 0;
char buff[1024];
printf("%s", "Test");
if(dg_count) {
unsigned char is_print_done = 0;
for(j = 0; j < dg_count; j++) {
printf("%78s\n", (curr_dl_result[j]));
is_print_done = 1;
}
} else {
printf("%78s\n","-" );
}
return 0;
}

最佳答案

也许使用 printf 返回打印的字符数这一事实,然后在打印最后一个字符串之前用空格填充。

#include <stdio.h>

void my_out(const char* str1, const char* str2)
{
int len = printf("%s", str1);
int i;
for( i=len ; i<60 ; i++ )
{
printf(" ");
}
printf("%s\n", str2);
}

int main()
{

my_out("List", "Bindings");
printf("-----------------------------------------------------------------------------\n");

const char *curr_dl_result[] = {
[0] = "DG1",
[1] = "DG2",
[2] = "DG3",
[3] = "DG3",
};

my_out("Test",curr_dl_result[1]);
my_out("Test eee",curr_dl_result[2]);
my_out("Test 22",curr_dl_result[3]);
return 0;
}

这将打印:

List                                                        Bindings
-----------------------------------------------------------------------------
Test DG2
Test eee DG3
Test 22 DG3

关于C printf缩进问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27957986/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com