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

Способы создания массива строк - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Ошибка в рабочей программе (классы, обьекты, приватные члены) http://www.cyberforum.ru/cpp-beginners/thread33458.html
Условие: Создайте класс – vector. Класс должен содержать, по крайней мере, 3 члена private: количество координат точки, поинтер к типу long double и функцию доступа к координатам точки. количество координат должно быть статическим. Используйте методы: неявный , деструктор и функции: модификации координат, вычисление длины вектора, вывод координат . Перегрузите операцию сложения для среднего...
C++ Создать двоичный файл и записать в него n целых чисел.Найти среднее арифметичерское среди простых чисел расположенных после минимального значения. Добрый день! Помогите пожалуйста с решением данной задачи: Задание: Необходимо написать и отладить две программы в среде Borland C++ 3.1 по за- данному варианту. Первая программа должна сформировать двоичный файл. Вторая – считать данные из этого файла, выполнить соответствующие вычисления (при этом ис- пользуемые массивы должны быть динамическими) и записать их результаты в текстовый ... http://www.cyberforum.ru/cpp-beginners/thread33448.html
Посчитать количество пар соседних элементов, которые имеют противоположные знаки C++
посчитать количество пар соседних элементов, которые имеют противоположные знаки. размерность 200. диапазон -60 60. Заранее спасибо)))
C++ Как подсчитать число вершин дерева?
Очень надо программу для подсчета числа вершин в дереве(для всех и бинарных тоже)! Программа должна быть на решена с помощью рекурсии !
C++ delay http://www.cyberforum.ru/cpp-beginners/thread33427.html
Подскажите, как сделать задержку по времени в ходе выполнения программы?
C++ Опять непонятно условие. Найдите пример,когда имеет смысл воспользоваться именем в его собственном инициализаторе.Это о чём вообще? enum game{game,out}Об этом что-ли?Поясните.. подробнее

Показать сообщение отдельно
Жестянка
сцуко киборг
102 / 29 / 2
Регистрация: 11.09.2008
Сообщений: 193
10.05.2009, 16:37     Способы создания массива строк
В с++ любая строка - уже массив (сhar-ов). Поэтому одномерный массив строк это - двумерный массив char.

Поэтому создать его можно тремя способами (как любой 2-мерный массив):

1. Явно:
Код
char Array[10][10];
в скобках нельзя ставить переменные (иначе компелер не поймет скока памяти под него выделять) поэтому и массив и сами строки получаются фиксированной длинны.
Вариант мало подходязий для строк, но в некоторых случаях (например при переборе базы маркировок, имеющих строго определенную длинну).

2. Массив указателей:
Код
char* Array[x];
for(int i=0;i<x;i++)
     {
     Array[i]=new char[]//или new char[y];
     }
x - количество строк, y - длинна строки. Причем "y" могут отличаться у строк в одном массиве.

3. Указатель на массив указателей:
Код
char** Array;
Array = new char *[x]; 
for (int i=0;i<x;i++)
    {
    Array[i]=new *char;
    }
почти то же самое, что и в предыдущем варианте.

А ещё можно написать свой класс (типа AnsiString в Билдере), использовав в нем один из этих способов и спокойно юзать его. Или пользоваться стандартными библиотеками (System::String). :-)
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru