5

テキストを端末の中央に水平に配置したい。Cでこれを行うにはどうすればよいですか?

4

3 に答える 3

5

@eyalmの答えを拡張するには:COLUMNSvarを取得した場合、次のように文字列を中央に配置できます:

int columns = strtol(getenv("COLUMNS"), NULL, 10);
int fwidth = strlen(s) + (columns - strlen(s)) / 2;
printf("%*s\n", fwidth, s);
于 2013-02-17T14:21:42.220 に答える
2

bash を使用している場合は、COLUMNS環境変数を使用して幅を取得し、中心を計算します。

于 2013-02-17T14:15:48.687 に答える
-1

私のようにここにすべてのコードを書くのが面倒なら、簡単な解決策です。

 Console.WriteLine("                  Hello World");
 Console.ReadLine();

必要に応じて、その中心までスペースを追加します LOL

于 2014-04-18T04:44:49.730 に答える