Другие языки программирования и технологии
Правильно ли я понимаю, что вывод массива на экран в c++ возможен только через перебор элементов?
Простого вывода, как в случае со string не существует?
От того, что в string спрятали цикл вывода, не значит, что это делается одним разом. Когда-то для терминала действительно командой процессора копировали "сразу" блок байт и таким образом ускорялся вывод, в наше же время даже терминал уже эмулируется и там так и так обычный цикл.
Так что если лень делать каждый раз вывод, то сам придумай и перегрузи свою функцию.
Так что если лень делать каждый раз вывод, то сам придумай и перегрузи свою функцию.
Плюсы достаточно гибкие, что бы сконструировать конструкцию, которая нужна здесь и сейчас
Готового нет, но можно добавить. В C++ всё можно добавить (ну почти ;). Это в большой степени метаязык с возмлжностями конструирования своих конструкций языка.
#include "vector"
#include "iostream"
using namespace std;
template < typename T >
ostream& operator<< (ostream& out, const vector< T > & v) {
for(auto i:v)out<< boolalpha<< i<<' '; return out;}
int main(){
vector < string > s = {"first", "second", "third"};
vector < bool > b = {true, false, true, false, false};
vector < int > i = {1, 2, 3, 4};
vector < float > f = {1.3, 7.85, 1e3, -5};
cout << s << endl;
cout << b << endl;
cout << i << endl;
cout << f << endl;
}
Выдает
first second third
true false true false false
1 2 3 4
1.3 7.85 1000 -5
#include "vector"
#include "iostream"
using namespace std;
template < typename T >
ostream& operator<< (ostream& out, const vector< T > & v) {
for(auto i:v)out<< boolalpha<< i<<' '; return out;}
int main(){
vector < string > s = {"first", "second", "third"};
vector < bool > b = {true, false, true, false, false};
vector < int > i = {1, 2, 3, 4};
vector < float > f = {1.3, 7.85, 1e3, -5};
cout << s << endl;
cout << b << endl;
cout << i << endl;
cout << f << endl;
}
Выдает
first second third
true false true false false
1 2 3 4
1.3 7.85 1000 -5
капец какой сложный вывод
for(auto i:arr)cout<<i<<" ";
for(auto i:arr)cout<<i<<" ";
Боб Бабаскин
А плюсы это точно сожрут?
Николай Кильянов
Такой код сработает если использовать класс Array из STL, где есть итераторы. Для C- массивов это не годится.
если массив (символов) заканчивается на 0 то можно вывести как string, одним разом
Похожие вопросы
- 1.Заполнить массив случайными числами. Вывести элементы массива на экран. Заменить все его минимальные элементы нулями.
- Плиз помогите!!! В массиве А размерностью nxm Найти сумму и количество всех элементов массива.
- Вывести название массива с помощью char, C++
- Дан двумерный массив C(m,n). Найти произведение элементов, больших среднего значения. Помогите пожалуйста!!!
- Дан двумерный массив C(m,n). Найти произведение элементов, больших среднего значения. Помогите пожалуйста!!! На паскале
- Как определить размер массива в процессе ввода? C++
- Дан двумерный массив А [7,8], заполненный случайным образом. Заменить нечетные элементы массива на число 0 СРОЧНОО ГАЙСЫ
- Помогите с информатикой!!! Кто понимает? Нужно преобразовать массив. (написать программу на паскале).
- Вывод пульса на экран пк
- Двумерный массив/Турбо паскаль/нужна помощь=( А(12)Заменить отрицательные элементы стоящие на чётных местах цифрой 8.