Разобрать пример из книги. Возможно ли, что автор ошибся? - C#
Формулировка задачи:
Всем привет. Ребят, разбираюсь с указателями и в одной книге подозреваю, что в примере кода ошибка в объяснении. Подскажите, пожалуйста, прав я или нет. Тут наверное скрины не приветствуются, поэтому дословно с комментариями перепишу с книги:
Рассмотрим следующий небезопасный метод:
Вопрос по последней строчке. В комментарии сказано, что на вывод идет адресс переменной myInt, НО неужели это так? ведь адрес переменной myInt можно узнать двумя способами: Console.WriteLine((int)&myInt); и Console.WriteLine((int)ptrToMyInt);
А в учебнике последняя строка кода показывает
Листинг программы
- unsafe static void PrintValueAndAddress()
- {
- int myInt;
- //Определить указатель на int и присвоить ему адрес myInt.
- int* ptrToMyInt = &myInt
- // Присвоить значение myInt, используя обращение через указатель.
- *ptrToMyInt=123;
- // Вывести на консоль некоторые значения.
- Console.WriteLine("Value of myInt {0}" , myInt); // Значение myInt
- Console.WriteLine("Address of myInt {0:X}" , (int)&ptrToMyInt); // Адрес myInt
- }
не
адрес переменной myInt, а адресуказателя
ptrToMyInt. Я прав? в учебнике ошибка? Разъясните.. ато я на грани запутаться.. когда еще не очень "крепко стоишь на ногах" опечатки в учебниках могут жутко насолить...Решение задачи: «Разобрать пример из книги. Возможно ли, что автор ошибся?»
textual
Листинг программы
- Console.WriteLine("Address of myInt {0:X}" , (int)&ptrToMyInt);
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д