С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
Sodiet
0 / 0 / 0
Регистрация: 24.01.2011
Сообщений: 6
#1

Консультации.[Липпман/Лажойе] - C++

26.11.2011, 19:30. Просмотров 998. Ответов 4
Метки нет (Все метки)

Приветствую.
Начал изучение языка C++ с книги Стенли Б.Липпмана и Жози Лажойе "Язык программирование C++. Третье издание". Про то, что Липпман не рекомендована для новичков, прочел уже в процессе обучения, но так как нареканий у меня нет, продолжил изучение.
Первоначальная цель темы - уточнения по поводу ответов на упражнения в книге.

§3.3. Указатели.
Упражнение 3.10

"Данная программа содержит ошибку, связанную с неправильным использование указателей:
C++
1
2
3
4
5
6
7
8
9
int foobar(int *pi) {
    *pi = 1024;
    return *pi;
}
int main() {
    int *pi2 = 0;
    int ival = foobar(pi2);
    return 0;
}
Ошибка заключается в том, что указателю не может быть присвоено значение NULL. Так ли это?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.11.2011, 19:30
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Консультации.[Липпман/Лажойе] (C++):

Лефоре или Липпман? - C++
Доброго времени суток. Как вы считаете, какой книгой лучше воспользоваться для осознания принципов С++? "Объектно-ориентированное...

перегрузка операции ++ (Липпман) - C++
как можна перегрузить данную операцию #include<iostream> #include<complex> using namespace std; inline complex<double>& ...

Липпман или Шилдт - C++
Знаю, что темы "что читать новичку" создавались уже миллион раз. Я, собственно, многие из прочитал (на этом сайте и на других). Эксперты...

Изучение С++11: Липпман или Прата? - C++
Поделитесь общими впечатлениями или мнениями по этим двум книгам

Липпман для начинающих. С функцией. - C++
Всем привет. Просьба сильно не пинать, но я слегка подзабыл элементарщину. Липпман в одном из своих упражнений просит переписать функцию...

Язык программирования С++. Вводный курс 4-е изд. Стенли Липпман[2007] - C++
Стоит ли читать данную книгу новичку? Язык программирования С++. Вводный курс 4-е изд. Стенли Липпман

4
Nameless One
Эксперт С++
5777 / 3427 / 255
Регистрация: 08.02.2010
Сообщений: 7,448
26.11.2011, 19:34 #2
Цитата Сообщение от Sodiet Посмотреть сообщение
Ошибка заключается в том, что указателю не может быть присвоено значение NULL. Так ли это?
нет, проблема не в этом. Проблема в разыменовании нулевого указателя
1
Sodiet
0 / 0 / 0
Регистрация: 24.01.2011
Сообщений: 6
26.11.2011, 19:47  [ТС] #3
C++
1
int *pi2 = 0;
Можно исправить на:
C++
1
int pi2 = 0;
?
0
Nameless One
Эксперт С++
5777 / 3427 / 255
Регистрация: 08.02.2010
Сообщений: 7,448
26.11.2011, 19:52 #4
можно, но только строку
C++
1
int ival = foobar(pi2);
нужно будет изменить на
C++
1
int ival = foobar(&pi2);
1
Байт
Нарушитель
Эксперт C
16695 / 10959 / 1689
Регистрация: 24.12.2010
Сообщений: 21,382
26.11.2011, 19:55 #5
Sodiet, В этом коде сначала указателю pi присваивается нулевое значение, т.е. он указывает в никуда (ну, или в защищенную область памяти). А потом в функции foobar в это никуда записывается число 1024
1
26.11.2011, 19:55
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.11.2011, 19:55
Привет! Вот еще темы с ответами:

Консультации по objective-c - Objective-C
iOS-разработчик с опытом работы в крупной компании дает оперативные консультации по скайпу или е-мейлу по любым вопросам, а также даю уроки...

Нуждаюсь в консультации - Игровой компьютер
подскажите что будет лучше взять интел i7-7700k или i7-6700k. говорят на 7 скачки температур сильные и сопли под крышкой, вот и пошли...

Прошу консультации по iptables - Ubuntu Linux
Доброго всем времени суток! Установлена у меня ubuntu 10.04. Поставлен apache2 в качестве веб сервера и ещё иное серверное ПО. Вот...

Прошу консультации в выборе! - Выбор ноутбука
Добрый день уважаемые форумчане! Нужна ваша квалифицированная помощь в выборе ноутбука. Сразу опишу принцип будущего использования, время...


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

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

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