1 / 1 / 0
Регистрация: 15.10.2018
Сообщений: 89
1

Что такое указатели? Зачем они нужны и их практичное применение

18.02.2019, 20:38. Показов 833. Ответов 13
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, подскажи пожалуйста зачем нужны указатели и в чем их смысл??? Ссылки на другие источники не приму, везде пишется и рассказывается одно и тоже, как по сценарию, ничего не понятно, объясните на практике.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.02.2019, 20:38
Ответы с готовыми решениями:

Что такое классы и зачем они нужны?
Здравствуйте! Объясните ,что такое классы и зачем они нужны? Я прочитал кучу всего про классы, но...

Что такое атрибуты и зачем они нужны?
Нужен человек, который может объяснить, что такое атрибуты и зачем они нужны, на как можно более...

Что такое абстрактные классы и зачем они нужны?
Добрый день, форум, решил немного расширить свои знания c# и начал с абстрактных классов(раньше...

Что такое комплекты инициализации и зачем они нужны?
Что такое комплекты инициализации и зачем они нужны? Например комплект инициализации к Xerox...

13
Модератор
Эксперт С++
13244 / 10386 / 6210
Регистрация: 18.12.2011
Сообщений: 27,782
18.02.2019, 20:47 2
Я приведу один пример (с помощью указателя перебрать элементы массива):
C++
1
2
3
char txt[]="abcd";
for(char* p=txt;*p!=0;++p)
   cout<<*p;
0
1 / 1 / 0
Регистрация: 15.10.2018
Сообщений: 89
18.02.2019, 20:49  [ТС] 3
Хорошо, чего мы просто не можем тогда это сделать с помощью цикла?(Я новичек, мб и не пойму что это нельзя сделать через обыкновенный цикл)
0
Mental handicap
1245 / 623 / 171
Регистрация: 24.11.2015
Сообщений: 2,429
18.02.2019, 20:50 4
Lepricon228, продемонстрируйте ваше видение, как вы бы это сделали?
0
1 / 1 / 0
Регистрация: 15.10.2018
Сообщений: 89
18.02.2019, 20:54  [ТС] 5
C++
1
2
3
4
5
char txt[]={"abcd"};
    for(int i=0;i<4;i++)
    {
        cout<<txt[i];
    }
0
Mental handicap
1245 / 623 / 171
Регистрация: 24.11.2015
Сообщений: 2,429
18.02.2019, 20:56 6
Lepricon228, отлично, давайте обратим ваше внимание на 4 строку вашего кода, как вы думаете как работает данная конструкция?
0
1 / 1 / 0
Регистрация: 15.10.2018
Сообщений: 89
18.02.2019, 20:57  [ТС] 7
Идет поиск элемента по индексу, и его вывод?)
0
Mental handicap
1245 / 623 / 171
Регистрация: 24.11.2015
Сообщений: 2,429
18.02.2019, 21:01 8
Lepricon228, нет-нет, 4 строка где вывод элемента массива, а именно конструкция со скобками []? Что эти скобки делают и почему?)
0
"C with Classes"
1634 / 1392 / 521
Регистрация: 16.08.2014
Сообщений: 5,828
Записей в блоге: 1
18.02.2019, 21:21 9

Не по теме:

Цитата Сообщение от Lepricon228 Посмотреть сообщение
Ссылки на другие источники не приму
да ты крутой чувак



Добавлено через 1 минуту
Цитата Сообщение от Lepricon228 Посмотреть сообщение
объясните на практике
на практике не получится, практика это твоя прерогатива

Добавлено через 6 минут
Lepricon228, указатели пришли по наследству из Си, Си позиционировался как высокоуровневый ассемблер, грамотно написанный код на ассемблере обладает наибольшей эффективностью, порассуждай и сделай выводы зачем нужны эти самые указатели.
0
1 / 1 / 0
Регистрация: 15.10.2018
Сообщений: 89
18.02.2019, 21:33  [ТС] 10
порассуждай и сделай выводы
я понимаю это так, что это нужно для сбережения огромного кол-ва памяти, но не могу понять когда её лучше сберечь а когда нет.
Что эти скобки делают и почему?)
эти скобки имеют указатель на элемент в массиве, то есть , какой он , как для человека 5-ый 10-ый 90-ый так для проги 00012849124f или 12783h
0
Неэпический
17815 / 10586 / 2044
Регистрация: 27.09.2012
Сообщений: 26,627
Записей в блоге: 1
18.02.2019, 22:37 11
Цитата Сообщение от Lepricon228 Посмотреть сообщение
ничего не понятно, объясните на практике.
Забейте. Изучите синтаксис, примеров порешайте, а надобность на практике придет сама скоро.
0
1 / 1 / 0
Регистрация: 15.10.2018
Сообщений: 89
19.02.2019, 06:19  [ТС] 12
Нет, практика у меня уже как пол года, и я доселе не понял что это такое, пишу это там где компилятор ругается или там где уже видел это.
0
327 / 218 / 107
Регистрация: 12.02.2019
Сообщений: 984
19.02.2019, 06:31 13
обращение к arr[i] это и есть *(arr+i) ,а динамические объекты, как к ним обращаться?
0
1 / 1 / 0
Регистрация: 15.10.2018
Сообщений: 89
19.02.2019, 06:34  [ТС] 14
хорошо, тогда вопрос, зачем мне обращаться так? *(arr+i) , если можно вот так arr[i], в динамике ты ставишь указатели везде где, не применяешь переменную, то есть допустим вывод односвязного списка.
C++
1
2
3
4
5
6
7
8
    struct list *p; // тут ты просто создал, объявил новую переменную
    p=head; // тут у неё уже значение, и далее ты меняешь её значения
    while (p!=NULL)
    {
        cout<<p->value<<"->";
        p=p->next;
    }
    cout<<"NULL\n";
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
19.02.2019, 06:34
Помогаю со студенческими работами здесь

Что такое hash-таблицы, и зачем они нужны?
Обьясните пожалуста по простому что такое хеш таблици и зачем они надо... пытался разобратся с ними...

Что такое атрибуты (dir) и зачем они нужны ?
может быть кто нибутъ объяснит что такое атрибуты и зачем они нужны ? a=1 a Out: 1 dir(a)...

Битовые поля структур: что такое и зачем они нужны?
Собственно, вопрос в заголовке. Читал Шилдта, но там эта тема довольно расплывчата. Надеюсь,...

Что такое атрибуты и зачем они? Для чего нужны директивы препроцессора?
Короче,товарищи,задаю вопрос не первый раз,поэтому,если уже отвечали,то прошу прощения,но я забыл...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru