|
8 / 8 / 6
Регистрация: 18.07.2013
Сообщений: 146
|
||||||
Разобрать пример из книги. Возможно ли, что автор ошибся?06.05.2014, 17:19. Показов 1261. Ответов 7
Метки нет (Все метки)
Всем привет. Ребят, разбираюсь с указателями и в одной книге подозреваю, что в примере кода ошибка в объяснении. Подскажите, пожалуйста, прав я или нет. Тут наверное скрины не приветствуются, поэтому дословно с комментариями перепишу с книги:
Рассмотрим следующий небезопасный метод:
Вопрос по последней строчке. В комментарии сказано, что на вывод идет адресс переменной myInt, НО неужели это так? ведь адрес переменной myInt можно узнать двумя способами: Console.WriteLine((int)&myInt); и Console.WriteLine((int)ptrToMyInt); А в учебнике последняя строка кода показывает не адрес переменной myInt, а адрес указателя ptrToMyInt. Я прав? в учебнике ошибка? Разъясните.. ато я на грани запутаться.. когда еще не очень "крепко стоишь на ногах" опечатки в учебниках могут жутко насолить...
0
|
||||||
| 06.05.2014, 17:19 | |
|
Ответы с готовыми решениями:
7
Не ошибся ли автор...?
|
|
1167 / 885 / 517
Регистрация: 09.04.2014
Сообщений: 2,098
|
||||||
| 06.05.2014, 17:39 | ||||||
|
должно быть
1
|
||||||
|
4694 / 2702 / 734
Регистрация: 02.08.2011
Сообщений: 7,228
|
||
| 06.05.2014, 17:44 | ||
Сообщение было отмечено Prizrak067 как решение
Решение
1
|
||
|
8 / 8 / 6
Регистрация: 18.07.2013
Сообщений: 146
|
|||||||
| 06.05.2014, 18:44 [ТС] | |||||||
Смотрю Вы человек знающий, если можно, хочу задать еще пару вопросов Вам. Какого типа указатель, в данном случае, указатель ptrToMyInt, если при выводе его нужно преобразовать в int? Что за странное преобразование (int)ptrToMyInt, в скобках нужный тип.. до прикосновения к указателям такое преобразование мне не попадалось и найти ничего по этому поводу не могу..причем, например, строку s="123" преобразовать в число (int)s не получается...
0
|
|||||||
|
4694 / 2702 / 734
Регистрация: 02.08.2011
Сообщений: 7,228
|
||
| 06.05.2014, 19:31 | ||
|
Указатель - переменная, которая хранит адрес другой переменной. Указатели - это переменные (то же самое, что и ссылки), которые хранятся в стеке текущего потока и указывают на данные в неуправляемой куче ( в отличие от ссылок, которые указывают на данные в managed heap). Тип - IntPtr, фактически int-адрес (32 битный вроде как) - это просто число). Дальнейшие подробности можно найти тут: "Windows via C++" Рихтера.
1
|
||
|
Master of Orion
|
|
| 06.05.2014, 19:41 | |
|
Prizrak067, в 32-разрядной системе указатель, как можно догадаться из названия, занимает ровно 32 байта. А это и есть размер int. Указатель - это просто число в памяти, которое говорит, в какой ячейке памяти лежит нужное нам значение.
А вот если скомпилировать в 64-разрядную систему, то адрес перестанет влезать в int, и тогда при таком приведении могут возникнуть ошибки
1
|
|
|
4694 / 2702 / 734
Регистрация: 02.08.2011
Сообщений: 7,228
|
|
| 06.05.2014, 19:45 | |
|
1
|
|
|
Master of Orion
|
|
| 06.05.2014, 19:47 | |
|
IamRain, ой ...
Кликните здесь для просмотра всего текста
Для тех, кто не догадался - битов, конечно же
0
|
|
| 06.05.2014, 19:47 | |
|
Помогаю со студенческими работами здесь
8
Опишите, используя структуру записи, книги(автор,название,год издания).Составьте программу вывода на экран упорядоченного списка книг(по фамилии автор Как на счет - "Разобрать пример из книги по полочкам?" Разобрать что делает код (возможно вирус) Разработать базу данных «Научно-техническая библиотека» (фамилия, имя, отечество, автор книги, название книги, город и издательство, год выпуска, тема Простой пример из книги. Что не так то? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога
Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога
Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
|
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования.
Часть библиотеки BedvitCOM
Использованы. . .
|