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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 58, средняя оценка - 4.78
Artishok
ЧакЭ одобряЭ
277 / 276 / 32
Регистрация: 27.12.2009
Сообщений: 1,767
#1

Указатели на структуры - C++

06.11.2010, 18:20. Просмотров 7956. Ответов 104
Метки нет (Все метки)

Pascal
1
2
3
4
5
type  celltype = record 
elетеt: integer; 
next: ^celltype 
end; 
DICTIONARY = array[0..B-1]  of  ^celltype;
какой аналог этой записи будет на си?
C++
1
2
3
4
5
6
7
typedef struct spis
{
    char *s;
    spis *next;
};
 
typedef struct spis *dict[maxn];
такой?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.11.2010, 18:20
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Указатели на структуры (C++):

Указатели на структуры - C++
Подскажите в чем ошибка...Дело в том когда я в вожу в каждое поле по 1 значению все нормально выводит,но если при в вводе в поле я пишу два...

Указатели и структуры - C++
Здравия желаю. Подскажите пожалуйста каким образом осуществляется доступ к полю структуры, если оно является указателем?

Структуры и указатели - C++
Задался парой вопросов. Возможно, уже где-то задавались, поэтому прошу прощения заранее. Ниже описана структура для однонаправленного...

Указатели и структуры - C++
Здравствуйте. Подскажите, пожалуйста, почему не меня среда ругается. error C2440: =: невозможно преобразовать "Book *" в...

Структуры и указатели - C++
Привет форумчане, столкнулся вот с такой вот задачкой на структуры: 1. Описать структуру с именем PRICE, содержащую следующие поля: -...

Структуры и указатели на структуры - C++
Так ли я сделал? #include <iostream> struct S { int i; }; void f1(S*s1,int k=0){ s1->i=k;};

104
accept
4823 / 3244 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
16.11.2010, 00:15 #61
Цитата Сообщение от Artishok Посмотреть сообщение
я так и не понял для чего нужна эта строчка
C
1
char *x1=new char[strlen(x)+1];
можно ведь
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
 
void shoot(char *x)
{  
   char *x1=x;
   cout<<x1<<endl;
}
 
int main()
{
    char x[5];
    cin>>x;
    shoot(x);
}
ладно, введи строки "abcd", "efgh" и "ijkl" и выведи их в обратном порядке
1
Artishok
ЧакЭ одобряЭ
277 / 276 / 32
Регистрация: 27.12.2009
Сообщений: 1,767
16.11.2010, 00:17  [ТС] #62
Цитата Сообщение от accept Посмотреть сообщение
выведи их в обратном порядке
по символьно?
0
accept
4823 / 3244 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
16.11.2010, 00:18 #63
C++
1
struct char dictionary[maxn];//массив символов.а как массив строк?
C++
1
struct char dictionary[LINESMAX][maxn];//массив символов.а как массив строк?
1
Artishok
ЧакЭ одобряЭ
277 / 276 / 32
Регистрация: 27.12.2009
Сообщений: 1,767
16.11.2010, 00:18  [ТС] #64
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
 
void shoot(char *x)
{  
   char *x1=x;
   for (int i=strlen(x)-1;i>=0;i--)
   cout<<x1[i]<<" ";
}
 
int main()
{
        char x[5];
        cin>>x;
        shoot(x);
}
abcd-->d c b a
0
accept
4823 / 3244 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
16.11.2010, 00:19 #65
не, не посимвольно, а построчно
1
Artishok
ЧакЭ одобряЭ
277 / 276 / 32
Регистрация: 27.12.2009
Сообщений: 1,767
16.11.2010, 00:21  [ТС] #66
linemax это длина строки?

Добавлено через 27 секунд
Цитата Сообщение от accept Посмотреть сообщение
не, не посимвольно, а построчно
то есть 3 ввода делать?

Добавлено через 1 минуту
Цитата Сообщение от accept Посмотреть сообщение
C++
1
struct char dictionary[LINESMAX][maxn];
ошибка что-то типа char не может идити после структуры или класса
0
accept
4823 / 3244 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
16.11.2010, 00:21 #67
да, три ввода делаешь, а потом выводишь строки в обратном порядке
1
Artishok
ЧакЭ одобряЭ
277 / 276 / 32
Регистрация: 27.12.2009
Сообщений: 1,767
16.11.2010, 00:22  [ТС] #68
передавать его надо уже через **a?
0
accept
4823 / 3244 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
16.11.2010, 00:24 #69
LINESMAX написано большими буквами, потому что константы пишутся большими буквами, чтобы их легко было отличать от переменных
это максимальное количество строк

Добавлено через 1 минуту
Цитата Сообщение от Artishok Посмотреть сообщение
передавать его надо уже через **a?
а у тебя никого нет, используй тот небольшой пример с show(), можешь добавить что хочешь туда
1
Artishok
ЧакЭ одобряЭ
277 / 276 / 32
Регистрация: 27.12.2009
Сообщений: 1,767
16.11.2010, 00:26  [ТС] #70
Цитата Сообщение от accept Посмотреть сообщение
выводишь строки в обратном порядке
так
C++
1
2
for (int i=strlen(x)-1;i>=0;i--)
   cout<<x1[i]<<" ";
Добавлено через 47 секунд
Цитата Сообщение от accept Посмотреть сообщение
а у тебя никого нет, используй тот небольшой пример с show(), можешь добавить что хочешь туда
Фраза не ясна
0
accept
4823 / 3244 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
16.11.2010, 00:31 #71
ну что ты собрался передавать в плане **a ?
у тебя там нет ничего, что можно передать таким образом

Добавлено через 1 минуту
не, не "abcd" -> "dcba"
а "abcd", "efgh", "ijkl" -> "ijkl", "efgh", "abcd"
1
Artishok
ЧакЭ одобряЭ
277 / 276 / 32
Регистрация: 27.12.2009
Сообщений: 1,767
16.11.2010, 01:03  [ТС] #72

Не по теме:

обходными путями к моей проге иду какими-то.у меня такое ощущение что лабу завтра я не сдам.а ещё РГР добавится...мда



Добавлено через 8 минут
Цитата Сообщение от accept Посмотреть сообщение
ну что ты собрался передавать в плане **a ?
C++
1
struct char dictionary[maxn][100];//не работает
если найдется способ задания такого типа
то
C++
1
2
dictionary d;
       insert(s,d);
но массив d - двухмерный т.е. так void insert(char *x,dictionary *d)
его нельзя педавать

Добавлено через 15 минут
Цитата Сообщение от accept Посмотреть сообщение
не, не "abcd" -> "dcba"
а "abcd", "efgh", "ijkl" -> "ijkl", "efgh", "abcd"
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
 
void show(char *x,char *x1,char *x2)
{
    char *y=x;
    char *y1=x1;
    char *y2=x2;
    cout<<y2<<" "<<y1<<" "<<y1;
}
 
int main()
{
    char z[5];
    char z1[5];
    char z2[5];
    cin>>z;
    cin>>z1;
    cin>>z2;
    show(z,z1,z2);
}
Добавлено через 1 минуту

Не по теме:

8 часов 57 минут

0
accept
4823 / 3244 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
16.11.2010, 01:22 #73
а вот в этой же программе ещё несколько строк введи, где-то ещё maxn - 3 строки
1
Artishok
ЧакЭ одобряЭ
277 / 276 / 32
Регистрация: 27.12.2009
Сообщений: 1,767
16.11.2010, 01:31  [ТС] #74
что прямо 997?

Добавлено через 7 минут
ну сделал ещё 2.
ввел
wert
kent
lop
to
t
вывел t to lop kent wert

Добавлено через 29 секунд
Какое отношение это имеет к моей проге?
0
accept
4823 / 3244 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
16.11.2010, 01:42 #75
Цитата Сообщение от Artishok
что прямо 997?
Какое отношение это имеет к моей проге?
да, прямо 1000 строк, и выводить их в любом порядке потом
к любой из них получить доступ и вывести на экран, хоть к пятисотой, хоть к семисотой
1
16.11.2010, 01:42
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.11.2010, 01:42
Привет! Вот еще темы с ответами:

Указатели и динамические структуры данных - C++
Задание 1. Дан указатель P1 на вершину стека (если стек пуст, то P1 = nil). Из- влечь из стека все элементы и вывести их...

Указатели и динамические структуры данных - C++
В данный момент занимаюсь изучением динамических структур данных и указателей, и вот вот возник вопрос, есть ли разница изучать эту тему в...

Структуры, содержащие указатели на самих себя - C++
Как вообще возможно существование структур, содержащих указатели на самих себя? struct mystruct{ int a; char ch; ...

список (в программе обнуляются указатели на структуры) - C++
здравствуйте помогите найти ошибку, при возврате указателя на структуру из функции в функцию майн он обнуляется, это меня сбивает с толку...


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

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

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