我正在尝试创建一个程序,该程序将生成一个我可以轻松更改的字符表。但是,我希望它看起来不错,所以我将使用一些ASCII艺术在工作表中创建边框。我想知道如何创建使用|
和-
的边框,但这些边界会在数字发生变化时移动。
我想我可以使用一些功能,它可以将结尾|
放在它应该的确切位置,当数字从6到16或16到116或者单词时不会移动和信件。
如果有人知道怎么做,我会非常感激。
答案 0 :(得分:1)
您可以在printf
中使用字段宽度说明符。对于左对齐,您可以添加-
前缀。 e.g。
#include <stdio.h>
int main(void)
{
printf( "| Greed : %-10d |\n", 6 );
printf( "| Gluttony : %-10d |\n", 16 );
printf( "| Lust : %-10d |\n", 116 );
return 0;
}
输出:
| Greed : 6 |
| Gluttony : 16 |
| Lust : 116 |
或者,您可以采用更具规划性的策略,如评论中 rici 所示。那将使用返回值(如果是非负数),它会告诉你写了多少个字符。
在此处阅读printf
及其格式说明符的更多信息:http://en.cppreference.com/w/cpp/io/c/fprintf