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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
last13day
0 / 0 / 0
Регистрация: 24.06.2013
Сообщений: 4
#1

Вывод массива char без лишних символов - C++

14.01.2014, 16:25. Просмотров 971. Ответов 5
Метки нет (Все метки)

В коде имеется массив, объявленный:
char text[N];
далее в коде следует вывести значение массива на данный момент
cout << text << " = " << n << "!" << endl;
и выводится подобное что показано на картинке
т.е. значения массива в "пустых" ячейках принимают вид "кракозябр", ну а значения в виде чисел выводятся нормально
Каким образом можно вывести массив text, выводя только те ячейки, в которых содержатся числа?
Миниатюры
Вывод массива char без лишних символов  
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.01.2014, 16:25     Вывод массива char без лишних символов
Посмотрите здесь:

Проблемы с программой (вывод лишних символов из данных вне массива) - C++
Прошу скорее помочь с программой. Выводит лишние неведомые символы. Почему это происходит мне известно, однако где и как с этим бороться -...

Вывод двумерного статически создаваемого массива символов (char) в cout - C++
Приветствую всех. Подскажите пожалуйста как вывести через cout в терминал двумерный, статически создаваемый массив символов. Если в...

Считать файл в массив без лишних символов - C++
здравствуйте. нужна правильная реализация задачи: на вход подается файл, примерное содержание - &quot;Hello, username! etc. etc.&quot; на...

Вывод лишних символов в строке - C++
Добрый день! Мне нужно решить простую задачу на множественное наследование классов (код приведен ниже). Задачу я решил, наследование...

Вывод на экран в двоичной системе без лишних нулей - C++
bitset&lt;8&gt; (p); в качестве аргумента не принимает переменную,мне нужно вывести на экран например 5 ввиде 101 ,а не 00000101,есть ли другая...

Сравнение массива символов char - C++
День добрый. Пытаюсь сделать так: char nomer,nomer2; //Тут по ходу выполнения программы посимвольно в оба массива вписывались одни и...

Ввод двумерного массива символов char с клавиатуры - C++
к примеру нужно ввести массив размером 4х2 : a f b d c e g h как это можно реализовать в С/С++ ?

Вывод массива char - C++
Почему вообще работает этот код?(пробовал с целочисленным массивом,такого результата как тут не наблюдается)Он выводит элементы массива и...

вывод массива char* - C++
Подскажите, как вывести массив char без мусора? есть такой код: char* mes = new char; int i = 0; for (string::iterator iter =...

Вывод числа в столбик с первой цифры, без массива, без строк - C++
#include &lt;iostream&gt; #include &lt;math.h&gt; using namespace std; void p(long a) { long i=0,z=a; while (z) { ...

Вывод массива char* на консоль - C++
Пытаюсь вывести массив чаров в консоль, но выходит какая-та белеберда. Вывод в: for (size_t i = 0; i &lt; 20; i++) { cout &lt;&lt;...

Сложение / Вычитание / Умножение чисел записанных в виде массива char символов - C++
доброго времени суток. такой вопрос, как мне сделать выше перечилненные математичиские вычесления чилам записсаных как массив char но ...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
UriahHeep
222 / 217 / 41
Регистрация: 24.09.2012
Сообщений: 509
Записей в блоге: 2
14.01.2014, 17:48     Вывод массива char без лишних символов #2
Всё дело в том, как вы инициализируете массив char text[N]. При выделении памяти под массив вы получаете некий участок памяти, в которой может находиться мусор. Обнулите все элементы массива перед его использованием.
gromo
370 / 269 / 24
Регистрация: 04.09.2009
Сообщений: 1,214
14.01.2014, 18:19     Вывод массива char без лишних символов #3
C++
1
char text[N] { '\0', };
Somebody
2786 / 1600 / 145
Регистрация: 03.12.2007
Сообщений: 4,189
Завершенные тесты: 1
14.01.2014, 18:27     Вывод массива char без лишних символов #4
C++
1
char text[N] {};
gromo
370 / 269 / 24
Регистрация: 04.09.2009
Сообщений: 1,214
14.01.2014, 18:32     Вывод массива char без лишних символов #5
Somebody, а если массив на стеке будет? Он разве будет таким образом инициализирован нулями?
Somebody
2786 / 1600 / 145
Регистрация: 03.12.2007
Сообщений: 4,189
Завершенные тесты: 1
14.01.2014, 20:14     Вывод массива char без лишних символов #6
http://www.open-std.org/jtc1/sc22/wg...2012/n3337.pdf
8.5.4 List-initialization [dcl.init.list]
...
3 List-initialization of an object or reference of type T is defined as follows:
...
— Otherwise, if the initializer list has no elements, the object is value-initialized.
[ Example:
int** pp {}; // initialized to null pointer
—end example ]
...
8.5 Initializers
...
7 To value-initialize an object of type T means:
— if T is a (possibly cv-qualified) class type (Clause 9) with either no default constructor (12.1) or a default constructor that is user-provided or deleted, then the object is default-initialized;
— if T is a (possibly cv-qualified) non-union class type without a user-provided or deleted default constructor, then the object is zero-initialized and, if T has a non-trivial default constructor, default-initialized;
— if T is an array type, then each element is value-initialized;
— otherwise, the object is zero-initialized.
Yandex
Объявления
14.01.2014, 20:14     Вывод массива char без лишних символов
Ответ Создать тему
Опции темы

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