这是我的代码的一小部分:
char *a;
asprintf(&a,"%%%ds",Max_FnLen);
printf(a,files[i-1]->d_name);
free(a);
printf("%s",KNRM);
if ( (i % (180/Max_FnLen)) == 0) printf("\n");
它运行良好,但我想左对齐输出,但默认情况下它是右对齐的,任何人都可以帮助我。
最佳答案
使用“-”修饰符,例如:
printf("%-20s\n", "短行");
就您而言:
char *a;
asprintf(&a,"%%-%ds",Max_FnLen);
printf(a,files[i-1]->d_name);
free(a);
printf("%s",KNRM);
if ( (i % (180/Max_FnLen)) == 0) printf("\n");
关于c - 在格式化输出时使用变量而不是常量,并且需要将其左对齐,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46151760/