Разобрать пример из книги. Возможно ли, что автор ошибся? - 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);
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д