![]() |
Внимание, важное сообщение: Дорогие Друзья!
В ноябре далекого 2001 года мы решили создать сайт и форум, которые смогут помочь как начинающим, так и продвинутым пользователям разобраться в операционных системах. В 2004-2006г наш проект был одним из самых крупных ИТ ресурсов в рунете, на пике нас посещало более 300 000 человек в день! Наша документация по службам Windows и автоматической установке помогла огромному количеству пользователей и сисадминов. Мы с уверенностью можем сказать, что внесли большой вклад в развитие ИТ сообщества рунета. Но... время меняются, приоритеты тоже. И, к сожалению, пришло время сказать До встречи! После долгих дискуссий было принято решение закрыть наш проект. 1 августа форум переводится в режим Только чтение, а в начале сентября мы переведем рубильник в положение Выключен Огромное спасибо за эти 24 года, это было незабываемое приключение. Сказать спасибо и поделиться своей историей можно в данной теме. С уважением, ваш призрачный админ, BigMac... |
|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » C/C++ - Адреса, адресные операторы |
|
C/C++ - Адреса, адресные операторы
|
$AutoITer Сообщения: 446 |
Читаю книгу по С++. Дошел до главы "Первое знакомство с указателями в С++", прочитал, и не понял для чего они нужны? Дальше в книге посмотрел листинги программ и эти операторы там активно используются.
Прошу помощи в объяснении. И во всех ли программах нужно это? |
|
------- Отправлено: 21:04, 20-04-2010 |
![]() Пользователь Сообщения: 133
|
Профиль | Сайт | Отправить PM | Цитировать Могу ещё добавить, что в случае использования ссылок на массив элементов или объект, нет необходимости заботиться об освобождении памяти. А в случае использования указателей, за ней придётся следить
![]() |
------- Отправлено: 10:46, 22-04-2010 | #11 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
$AutoITer Сообщения: 446
|
Профиль | Отправить PM | Цитировать Я в шоке О_о...
El Scorpio - спасибо большое |
------- Отправлено: 13:53, 22-04-2010 | #12 |
ИО Капитана Очевидности Сообщения: 5387
|
Профиль | Отправить PM | Цитировать Medic84, вникай.
Без понимания того,*что есть указатель (маленькая цифра, говорящая процессору "информация лежит вон там"), дальше книги по С++ читать бесполезно. Особенно потому, что во многих "умных" книгах авторы используют заумные слова вроде "разыменование указателя", которые ни черта не способствуют пониманию смысла программы. И*ещё. Очень часто в "умных" книгах используются очень глупые примеры работы со строковыми значениями. Точнее говоря, в C++ вообще нет встроенного типа данных "строка" - есть только символ (char). А "строка" - это не более,*чем массив символов, заканчивающихся нулём. И не тем нулём, который символ '0', а нулевым символом (может обозначаться,*как символ '\0' - юниксоиды поймут). Посему*в книгах чаще всего используют "простые примеры" с типами данных "указатель на символ" (char *). Данный указатель содержит в себе лишь адрес первого элемента массива символов. Однако одна интересная особенность большинства сред разработки - изображать данные указатели,*как текст, на который они указывают - вводит начинающих программистов в заблуждение. Посему первое правило начинающего программиста - никогда не использовать char*. Если нужны строки - лучше использовать соответствующие классы-оболочки (сложные типы данных, скрывающие большинство действий в своих функциях) - string, AnsiString, CString и так далее. Использование объектов этих типов позволяет упростить работу со строками в 9000 раз. Я не шучу - в С++ при работе с символьными массивами программисту приходится использовать десятки функций, половина из которых легко могут привести к критическим сбоям в работе программы, и самостоятельно выполнять работу по выделению/освобождению памяти в "куче". Даже опытные кодеры предпочитают использовать char* только там, где требуется наивысшая производительность |
------- Отправлено: 06:07, 23-04-2010 | #13 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Мобильные операторы 2.0 | OSZone Software | Новости программного обеспечения | 0 | 04-04-2010 14:30 | |
PowerShell - [блог] Регулярные выражения – Операторы -replace и -split | Xaegr | Скриптовые языки администрирования Windows | 0 | 18-12-2009 19:30 | |
Операторы мобильной связи и тарифы | Ser6720 | Мобильные ОС, смартфоны и планшеты | 17 | 10-09-2009 16:07 | |
Операторы сотовых телефонов! | wolf | Мобильные ОС, смартфоны и планшеты | 71 | 29-05-2004 18:00 | |
Есть ли в России операторы стандарта CDMA? | Yustus | Мобильные ОС, смартфоны и планшеты | 17 | 07-02-2003 09:42 |
|