|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
23.09.2010, 05:56 | #1 |
Форумчанин
Регистрация: 14.12.2009
Сообщений: 716
|
Подсчет негативных элементов массива преобразованных из строки
#Всем доброго времени суточек, уважаемые пользователи данного форума.
.So, I have some trouble with string conversation В структуре маю следующий массив: Код:
Код:
|
23.09.2010, 07:55 | #2 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
I'm learning to live...
|
|
23.09.2010, 09:47 | #3 |
Пользователь
Регистрация: 24.08.2010
Сообщений: 34
|
Выложи кусок кода побольше.
Надо полагать, что VectorStruct у тебя хранит одно число в формате строки, так ? Что за структура у Table ? Думаю ответ родится сразу, как только пояснишь |
23.09.2010, 22:53 | #4 | |
Форумчанин
Регистрация: 14.12.2009
Сообщений: 716
|
Цитата:
Весь код: Код:
Последний раз редактировалось coNsept; 23.09.2010 в 22:59. |
|
24.09.2010, 00:28 | #5 |
C++ hater
СтарожилДжуниор
Регистрация: 19.07.2009
Сообщений: 3,333
|
2coNsept
код очень страшный. чего тока стоит эта часть Код:
пс. чо за итальянский? ппс. лучше напиши, что должно быть в итоге
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay
My other car is cdr. Q: Whats the object-oriented way to become wealthy? A: Inheritance |
24.09.2010, 01:33 | #6 | |
Форумчанин
Регистрация: 14.12.2009
Сообщений: 716
|
Хм, а разве под статичный строковый массив нужно выделять память?
У меня просто такое понятие, если char* тогда выделяю память, если массив статичный к примеру char* [], тогда я этого не делаю. (Точнее сказать я даже и не в курсе был нужно ли это, так как и так вижу сколько возможно использовать элементов, не изучил я еще всех тонкостей). Кстати, буду рад любой критики кода, жду исправлений и пояснений дабы в следующий раз писать код более правильным и элегантным. За ранее благодарен. Цитата:
|
|
24.09.2010, 01:49 | #7 |
C++ hater
СтарожилДжуниор
Регистрация: 19.07.2009
Сообщений: 3,333
|
2coNsept
это не строковый массив. у тебя массив из 100 указателей на тип char. он будет строковым массивом (или двумерным символьным массивом, как угодно), если ты выделишь для каждого элемента память под строку. пока у тебя кучка указателей ни на что. код критиковать не буду, очень уж я пылкий на критику, понимаешь. могу посоветовать только пользоваться нормальным компилятором, собирать свои программы с высоким уровнем показа варнингов и внимательно их читать. этому коду поможет только ggdG
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay
My other car is cdr. Q: Whats the object-oriented way to become wealthy? A: Inheritance |
30.09.2010, 17:56 | #8 |
Форумчанин
Регистрация: 14.12.2009
Сообщений: 716
|
Такой вариант по лучше, на взгляд?
Код:
Последний раз редактировалось coNsept; 30.09.2010 в 17:58. |
30.09.2010, 18:41 | #9 | |
C++ hater
СтарожилДжуниор
Регистрация: 19.07.2009
Сообщений: 3,333
|
2coNsept
Цитата:
Код:
т.е уже при обращении Vector[Counter] твоя прога должна упасть. может в дебаге ты и выживешь. но врядли ты же понимаешь, что это равносильно *(Vector + Counter)? и если по этому смещению лежит не "что-то из мусора", а 0, упадет. ибо нулевой указатель нельзя разыменовывать) "аписняю". char *c; указатель на тип char. можно выделить для него память, как c = new char[128]; и он будет указывать на память длиной 128 байт. тут все тривиально. далее. char **c. указатель на указатель. чтобы его использовать, необъодимо выделить память под обычные указатели: c = new char*[10]; получили в памяти массив из 10-указателей. далее уже для этих указателей можно выделить память, где можно хранить данные for (int i = 0; i < 10; i++) c[i] = new char[128]; для 10 указателей выделяем память из 128 байт. и вот только теперь память можно заполнять. например strcpy(c[2], "string"); теперь сравни со своим кодом. оставил бы char *Vector[100]; как в исходном варианте, твоя инициализация (дальше не смотрел) была бы правильная. но тут у тебя массив указателей динамический короче, k&r до посинения и последующего просветления) сюда же, структуры передаешь по значению. трагеееедияяяя. но объективно да, вариант можно считать "получше" вот прогнал то я тираду....
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay
My other car is cdr. Q: Whats the object-oriented way to become wealthy? A: Inheritance Последний раз редактировалось pproger; 30.09.2010 в 18:50. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Вывод элементов массива.Изменение элементов массива. | Vesnushka18 | Помощь студентам | 6 | 09.06.2011 13:05 |
подсчет элементов в массиве | счастливая | Помощь студентам | 1 | 17.05.2010 19:11 |
УЦВМ, сумма элементов заданной строки массива | sig_GB | Помощь студентам | 9 | 04.03.2010 23:29 |
найти среднее арифметическое элементов массива состоящее из 5 элементов | viatlon | Общие вопросы C/C++ | 9 | 12.12.2009 00:45 |
В одномерном массиве, состоящем из n вещественных элементов, вычислить сумму элементов массива | HazelHen | Общие вопросы C/C++ | 2 | 29.03.2009 15:16 |