Перейти к содержимому

lucky 1

Присоединился: 28 июн 2006
Оффлайн Последний вход: мая 28 2008 22:37
-----

Созданные мной темы

[C/C++] Обращение к массиву структур через указатели?

13 мая 2007 - 19:45

Даже как-то стрёмно спрашивать, но уж больно мало времени осталось. Написал проект по информатике (1ый курс), там основная часть данных хранится в элементах структуры, к которой напрямую обращаются функции. Тока щас осознал, что число элементов у меня задано изначально, а требуется динамическое выделение памяти. Единственный известный мне способ - что-то вроде:
char * p;
p = new char [x];
Посчитать в самом начале работы проги нужное кол-во элементов (меняется в зависимости от файла, с которым работает прога) - не проблема. ОК, кол-во известно, структура называется node, в коде что-то типа:
node * p;
x = NodeCount();
p = new node[x];
По идее вот он мой массив struct'ов и указатель на него, теперь вместо, допустим, node.content буду писать p->content и все дела. Но мне нужны обращения к конкретным элементам типа: node[n].content[m]. По идее если *p указывает на начало массива, то зная, сколько памяти выделяется под один struct, можно node[n]... заменить на (p + (n * размер))->... и указывать это будет туда же. Однако не работает. Первый компонент 1ого элемента структуры (стринг) записывается просто косячно (какие-то левые символы в начале и конце), на втором (инт) вообще предлагает отправить отчёт)) Да и код с такой подстановкой вышел совсем нечитаемый. Должен быть способ лучше, а я, нуб, его не знаю, или вообще не там ищу решение. Напомню, изначальная моя задача такая: вместо struct Node {...} Node[256]; использовать Node[x] где x определяется в самом начале работы программы. Что делать? :)

[C] Задание по массивам

18 октября 2006 - 10:22

Получил в ТТУ задание такого вида:

Koostada programm, mille abil:
1. klaviatuurilt sisestatakse reaalarvulise massiivi A pikkus N (1<N<20) ja elemendid;
2. massiivist A elimineeritakse ja kantakse massiivi B kхik paarisindeksitega elemendid kuni massiiv A jддb tьhjaks.
3. ekraanile vдljastatakse masiiv B.

Собственно с 1 и 3 проблем никаких, а вот с удалением элементов из массива и проверкой "не стал ли он tuhjaks" непонятки. Как мне это реализовать?
Сначала присваиваю элементу из В значение чётного элемента из А, потом по идее надо этот элемент из А удалить, и так для всех чётных до конца массива, потом всё сначала, пока в А что-то есть. С программированием вообще знаком неделю, кого спрашивал - говорят, что удалять из массива нельзя. Как задать условие непустого массива тоже не догнал, знаю только sizeof, а оно выдаёт каждый раз тот размер, который задан изначально. С другой стороны, задание 1го семестра не может быть особо изощрённым, предыдущее-то сделал за день, учась с нуля. Может я просто туплю? или не с той стороны подхожу к проблеме =//

Физкультура в ТТУ

01 августа 2006 - 09:30

бгы, на стройке учёба начинаеца с физры :D btw что она из себя в тту представляет? ))