Форум программистов, компьютерный форум CyberForum.ru

Выводит в конце мусор - C++

Войти
Регистрация
Восстановить пароль
 
Даня98
 Аватар для Даня98
27 / 27 / 8
Регистрация: 13.02.2010
Сообщений: 145
14.10.2011, 11:28     Выводит в конце мусор #1
Задание такое: напишите функцию print_array (ostream os, int* a, int n) выводящую в поток os значения массива а (содержащего n элементов). Вот мой код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
 
 
std::ostream& print_array (std::ostream& os, int* a, const int n)
{
    for (int i=0;i<n;++i) os << a[i] << " ";
    return os;
}
 
 
int main()
{
    int* n = new int[10];
    for (int i=0;i<10;++i) n[i]=i;
    
    std:: cout << print_array(std::cout,n,9);
    delete []n;
    system ("pause");
    return 0;
}
Но после его запуска у меня в конце выводит еще какой-то адрес (или мусор). Подскажите, как это исправить?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.10.2011, 11:28     Выводит в конце мусор
Посмотрите здесь:

C++ работа со строками, мусор в конце строки
C++ При выводе массива, выводит мусор
Структура выводит мусор C++
Аналог рекурсивной функции, отображающей строку в обратном порядке, выводит "мусор" C++
Мусор C++
Выводит "мусор" при считывании файла C++
C++ Почему выводит в конце строки мусор?
Мусор в конце строки C++
C++ Мусор при выводе не смотря на \0 символ в конце строки
Убрать мусор в конце строки C++
C++ Выводит ноль в конце массива
C++ При работе с указателями на сервер отправляется мусор, но выводит в консоль норм данные

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
aeshes
 Аватар для aeshes
437 / 200 / 13
Регистрация: 07.10.2011
Сообщений: 462
14.10.2011, 11:38     Выводит в конце мусор #2
вызывай свою функцию так
C++
1
print_array(std::cout,n,10);
без отправки ее в cout. То число, которое у тебя выводилось в конце, это адрес твоего потока os, как я поняла. Его возвращает твоя функция, и его ты печатаешь стандартным потоком cout
Yandex
Объявления
14.10.2011, 11:38     Выводит в конце мусор
Ответ Создать тему
Опции темы

Текущее время: 13:12. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru