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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 24, средняя оценка - 4.71
J_Max
Заблокирован
#1

Массив указателей - C++

21.02.2010, 19:17. Просмотров 3300. Ответов 11
Метки нет (Все метки)

Помогите пожалуйста отсортировать массив указателей на строки.
Сортировка должна быть по первой букве строки.
Заранее благодарю...

Добавлено через 5 минут
Забыл добавить оформить сортировку в виде функции...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.02.2010, 19:17
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Массив указателей (C++):

Массив указателей на массив строк и сортировка массива указателей - C++
Добрый день. Поступил вопрос. Есть задача. У нас встроенный массив char mass;.Мы вводим строки до тех пор, пока не будет заполнен массив...

по поводу указателей. Как правильно задавать массив указателей и его удалять? - C++
Т.е., например создаю указатель: TPoint *p_Point=NULL; а если массив? TPoint *p_MassPoint; //=?; как массив обнулить не ясно ...

Создать специфицированный шаблон функции, принимающей массив указателей на char и количество самих указателей - C++
Задача: создать специфицированный шаблон функции, принимающей массив указателей на char и количество самих указателей. Вернуть адрес...

Создать специализацию для шаблона, которая принимает массив указателей на строки и количество этих указателей - C++
Нужно создать специализацию для шаблона, которая принимает массив указателей на строки и количество этих указателей. Эта специализация...

Массив из указателей на масив из указателей на массив из int) - C++
Доброго времени суток! Возникла проблема - как на C++ создать массив из указателей на массив из указателей на int? То есть массив из n...

Чем отличаются двумерный символьный массив и массив указателей на строки - C++
Двумерный символьный массив и массив указателей на строки. Собственно чем они отличаются? Заранее спасибо.

11
cibertronic
256 / 143 / 13
Регистрация: 27.12.2009
Сообщений: 895
21.02.2010, 19:20 #2
чет както непонятно задание... полностью его можно описать?

Добавлено через 2 минуты
массив целочисленный иль как? иль массив символов? иль шо енто, по убыванию или по возрастанию отсортировать?
0
J_Max
Заблокирован
21.02.2010, 19:20  [ТС] #3
Дан массив указателей на строки:
Допустим:
char *mstr[3] = {
"Igor",
"Oleg",
"Tom"
};
Отсортировать массив указателей по первой букве строки.
0
cibertronic
256 / 143 / 13
Регистрация: 27.12.2009
Сообщений: 895
21.02.2010, 19:20 #4
массив целочисленный иль как? иль массив символов? иль шо енто, по убыванию или по возрастанию отсортировать?
0
cibertronic
256 / 143 / 13
Регистрация: 27.12.2009
Сообщений: 895
21.02.2010, 19:23 #5
мм, тут не помогу... я еще сам такому не научился
0
J_Max
Заблокирован
21.02.2010, 19:23  [ТС] #6
по убыванию или по возрастанию
Хоть как нибудь я в указателях совсем не разбираюсь.
> < - эти знаки не имеют для меня значения, их поменять не трудно.
0
Genius Ignat
1236 / 774 / 44
Регистрация: 16.09.2009
Сообщений: 2,014
21.02.2010, 19:41 #7
в указателях совсем не разбираюсь
Тема не для одного прочтения, в этом я с тобой согласен.

Добавлено через 7 минут
Проверял один раз работает.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#include <iostream.h>
#include <stdlib.h>
 
long sort_p(char **ptr , const int size);
long print (char **ptr , const int size);
int main(){
const int size = 10;
char *pstr[10] = {
"Ignat",
"Sergey",
"Igor",
"Den",
"Egor",
"Oleg",
"Maxim",
"Vitaly",
"Michael",
"Tom"
};
print(pstr,size);
sort_p(pstr,size);
print(pstr,size);
cout<<"sort\n";
return 0;
}
 
long sort_p(char **ptr , const int size){
for(int i=0;i<size-1;i++){
      for(int j=i+1;j<size;j++){
          if(*ptr[j]<*ptr[i]){
          char *tmp = ptr[i];
          ptr[i] = ptr[j];
          ptr[j] = tmp;
          }
      }
}
return 0;
}
 
 
 
long print(char **ptr , const int size){
for(int i=0;i<size;i++)cout<<ptr[i]<<'\n';
cout<<'\n';
cout<<'\n';
 
return 0;
}
Добавлено через 6 минут
Указатели это зло, для тех кто в них плохо разбирается, и не знает чего от них можно ожидать.
1
J_Max
Заблокирован
21.02.2010, 19:46  [ТС] #8
**ptr - что значит две звездочки и зачем они нужны, нам только про обычный указатель рассказывали.
0
kravam
быдлокодер
1700 / 887 / 45
Регистрация: 04.06.2008
Сообщений: 5,494
21.02.2010, 19:57 #9
Значит, берёшь и разбираешься сам!
char ** x;
Это значит объявляется переменная x типа:

указатель на [указатель на переменную типа char]
0
J_Max
Заблокирован
21.02.2010, 20:14  [ТС] #10
Следуя из контекста предположу что он нужен для хранения адреса указателя.
Пример:
int a = 20;
int *pa=&a;
int **Dprt = &p;
Верно я думаю?

Добавлено через 2 минуты
То есть в данном примере передается адрес первого указателя массива?

Добавлено через 11 минут
Ошибся:
int a = 20;
int *pa=&a;
int **Dprt = &pa;
Верно я думаю?
0
Genius Ignat
1236 / 774 / 44
Регистрация: 16.09.2009
Сообщений: 2,014
21.02.2010, 21:25 #11
J_Max:
Напиши мне в ЛС будет время объясню тебе про указатели.

Добавлено через 1 час 7 минут
Зайди сюда будет чем озадачить препода:
Бесконечность и далее...
1
kravam
быдлокодер
1700 / 887 / 45
Регистрация: 04.06.2008
Сообщений: 5,494
21.02.2010, 22:22 #12
Цитата Сообщение от J_Max Посмотреть сообщение
Верно я думаю?
вроде верно, может, в синтаксисе где ошибся.
...Ты зачем спрашиваешь-то?
Ты бери и пробуй, бери и пробуй, бери и пробуй.
Всё. Только так материал закрепится.
1
21.02.2010, 22:22
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.02.2010, 22:22
Привет! Вот еще темы с ответами:

опп класс и массив (создать массив указателей по выборке животных, участвующих в забеге) - C++
Здравствуйте! Есть задача... вкратце. Нужно создать массив указателей по выборке животных участвующих в забеге. Это Лошадь, Крокодил,...

Массив строк как массив указателей на массивы чаров - C++
Я всё правильно сделал? char* Files; Files = &quot;AHEAD&quot;; Files = &quot;LEFT&quot;; Files = &quot;RIGHT&quot;; Files = NULL; int searchFile()...

Задачка. массив указателей на одномерный массив - C++
Привет всем. Помогите, пожалуйста. Два дня мучился, писал, оказалось, что писал совсем не то, что нужно. Исходное задание такое: ...

Массив указателей - C++
Помогите, пожалуйста, разобраться в чем ошибка и обьясните, что тут не так. Спасибо. (программа запускается, но зависает) #include...


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

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Опции темы

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