Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.71/63: Рейтинг темы: голосов - 63, средняя оценка - 4.71
ЧакЭ одобряЭ
 Аватар для Artishok
285 / 284 / 86
Регистрация: 27.12.2009
Сообщений: 1,767

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

06.11.2010, 18:20. Показов 12682. Ответов 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
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
06.11.2010, 18:20
Ответы с готовыми решениями:

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

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

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

104
4866 / 3287 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
16.11.2010, 00:15
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от 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
285 / 284 / 86
Регистрация: 27.12.2009
Сообщений: 1,767
16.11.2010, 00:17  [ТС]
Цитата Сообщение от accept Посмотреть сообщение
выведи их в обратном порядке
по символьно?
0
4866 / 3287 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
16.11.2010, 00:18
C++
1
struct char dictionary[maxn];//массив символов.а как массив строк?
C++
1
struct char dictionary[LINESMAX][maxn];//массив символов.а как массив строк?
1
ЧакЭ одобряЭ
 Аватар для Artishok
285 / 284 / 86
Регистрация: 27.12.2009
Сообщений: 1,767
16.11.2010, 00:18  [ТС]
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
4866 / 3287 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
16.11.2010, 00:19
не, не посимвольно, а построчно
1
ЧакЭ одобряЭ
 Аватар для Artishok
285 / 284 / 86
Регистрация: 27.12.2009
Сообщений: 1,767
16.11.2010, 00:21  [ТС]
linemax это длина строки?

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

Добавлено через 1 минуту
Цитата Сообщение от accept Посмотреть сообщение
C++
1
struct char dictionary[LINESMAX][maxn];
ошибка что-то типа char не может идити после структуры или класса
0
4866 / 3287 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
16.11.2010, 00:21
да, три ввода делаешь, а потом выводишь строки в обратном порядке
1
ЧакЭ одобряЭ
 Аватар для Artishok
285 / 284 / 86
Регистрация: 27.12.2009
Сообщений: 1,767
16.11.2010, 00:22  [ТС]
передавать его надо уже через **a?
0
4866 / 3287 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
16.11.2010, 00:24
LINESMAX написано большими буквами, потому что константы пишутся большими буквами, чтобы их легко было отличать от переменных
это максимальное количество строк

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

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

Не по теме:

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



Добавлено через 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 минут:cry:

0
4866 / 3287 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
16.11.2010, 01:22
а вот в этой же программе ещё несколько строк введи, где-то ещё maxn - 3 строки
1
ЧакЭ одобряЭ
 Аватар для Artishok
285 / 284 / 86
Регистрация: 27.12.2009
Сообщений: 1,767
16.11.2010, 01:31  [ТС]
что прямо 997?

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

Добавлено через 29 секунд
Какое отношение это имеет к моей проге?
0
4866 / 3287 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
16.11.2010, 01:42
Цитата Сообщение от Artishok
что прямо 997?
Какое отношение это имеет к моей проге?
да, прямо 1000 строк, и выводить их в любом порядке потом
к любой из них получить доступ и вывести на экран, хоть к пятисотой, хоть к семисотой
1
ЧакЭ одобряЭ
 Аватар для Artishok
285 / 284 / 86
Регистрация: 27.12.2009
Сообщений: 1,767
16.11.2010, 02:16  [ТС]
кароч ясно что ты хочешь мне сказать что для каждой строки надо указатель создавать и по нему выводить строку.

Не по теме:

кароче это лабу я завтра очевидно не сдам.черт дернул меня сделать первую лабу на си.знал бы я что препод....то и не делал бы.делал бы все лабы на паскале и не парился.а теперь только хвосты зарабатывать.а там глядишь не допуск к зачету...эх.завтра деревья ещё...



спасибо за помощь

Добавлено через 11 минут
хотя почему за помощь?за намеки

Добавлено через 3 минуты

Не по теме:

почему больше нигде спасибо проставить не могу?одно сообщение - одно спасибо..хех

0
4866 / 3287 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
16.11.2010, 02:20
да, для каждой строки нужно память выделять, а потом ещё и освобождать

это всё был ответ на это
Цитата Сообщение от Artishok
я так и не понял для чего нужна эта строчка
C
1
char *x1=new char[strlen(x)+1];
0
ЧакЭ одобряЭ
 Аватар для Artishok
285 / 284 / 86
Регистрация: 27.12.2009
Сообщений: 1,767
16.11.2010, 02:43  [ТС]
кароче уже все равно.лаба не сделана

Добавлено через 20 минут

Не по теме:

но неужели было трудно написать рабочий код?



Добавлено через 28 секунд

Не по теме:

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

0
16.11.2010, 03:11

Не по теме:

не, ты хочешь не понимая ничего сдавать, а зачем это делать, разве в этом есть смысл ?

0
4866 / 3287 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
16.11.2010, 03:11
duplicate
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
16.11.2010, 03:11
Помогаю со студенческими работами здесь

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

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

Структуры указатели ссылки
Приветик! Начну сразу с кода. struct data { std::string guid; std::vector&lt;float&gt; price_history; };

Указатели на структуры и функции
Я собственно не хотел бы заводить очередную тему на полезность/бесполезность указателей но думаю немного таки приоткрою завесу. Да, они...

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


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

Или воспользуйтесь поиском по форуму:
80
Ответ Создать тему
Новые блоги и статьи
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru