Я читаю о коде unsafe, в основном для работы с растровыми изображениями. Однако я не могу найти объяснения пределов неясности. Я понимаю, что использование указателей на массиве не будет проверяться, поэтому я могу попытаться получить доступ к памяти за пределами ее границ. Все идет нормально. Но что, если я сделать доступ к этой памяти. Что происходит? Могу ли я изменить значения других переменных? Или даже изменить двоичный код программы? Или просто поднять исключение?Насколько опасный код является небезопасным?
Я хотел бы знать, что может быть хуже всего, прежде чем я решит использовать небезопасный код.
Неопределенное поведение. Вы не можете предсказать, что может случиться с какой-либо степенью уверенности, не зная точного контекста, в котором работает ваша программа. – itsme86
@ itsme86 Спасибо. Я предполагаю, однако, что существуют некоторые известные пределы. Например, мой код не может получить доступ к памяти, зарезервированной для других процессов на компьютере, поэтому он не может сбой других программ или операционной системы. Правильно? (Не включая использование ресурсов. Я имею в виду - он не может изменить их пространство памяти. Это правильно?) – ispiro
Будет ли этот вопрос более подходящим для [Programmers StackExhcange] (http://programmers.stackexchange.com/)? В противном случае, хороший вопрос :) – Roman