Есть ли способ установить определенное количество максимальных пробелов для символа табуляции (обратная косая черта t) "\ t" в C ++? - PullRequest
1 голос
/ 30 мая 2019

Я хочу напечатать квадратную матрицу, каждый из которых должен быть разнесен на 3 элемента. Тогда я обнаружил, что char '\t' может быть самым простым способом. Но я думаю, что число пробелов как-то определено в определенном алгоритме. Может кто-нибудь дать мне руководство по алгоритму или есть способ установить определенные пробелы в C ++ для '\t'?

Я знаю, как выводить вручную, определяя количество символов пробела. Однако '\t' кажется простым для программирования, а не зацикливания определенного алгоритма.

Для простой квадратной матрицы:

for (int x = 0, num = 1; x < 5; x++) {
        for (int y = 0; y < 5; y++, num++) {
            cout << num << "\t";
        }
        cout << endl;
    }

Кодовые выводы

1       2       3       4       5
6       7       8       9       10
11      12      13      14      15
16      17      18      19      20
21      22      23      24      25

пока мне нужно

1   2   3   4   5
6   7   8   9   10
11  12  13  14  15
16  17  18  19  20
21  22  23  24  25

Есть ли способ установить '\ t'?

Ответы [ 2 ]

1 голос
/ 30 мая 2019

Я почти уверен, что размер вкладки определяется вашей консолью, так что это будет настройка вашей IDE.Если вам нужно одинаковое количество пробелов, вам лучше использовать пробелы.Таким образом, вам не нужно изменять настройки консоли всего, на чем вы запускаете свой код.Почему бы просто не сделать что-то вроде

"    "

вместо "\ t"?

РЕДАКТИРОВАТЬ: очевидно, переполнение стека не оценивает несколько пробелов в тексте.

0 голосов
/ 30 мая 2019

Но, я думаю, число пробелов как-то определено в определенном алгоритме.
...
Есть ли способ установить '\t'?

Неесли только подключенный терминал не позволяет вам управлять этим способом.

Обычный способ управления форматированием вывода с использованием манипуляторов ввода / вывода , для вашего случая

  • std::setw()
  • std::left (или может быть лучше std::right для чисел)
...