Есть ли способ проверить, была ли инициализирована память, указанная указателем? (Не обязательно моей программой). Спасибо
номер
Неинициализированная память может содержать что угодно , включая байты, которые делают его похожим на инициализированный.
Единственным способом было бы определить «неинициализированное значение», такое как 0x0 (только потому, что), и использовать это внутри вашего приложения, устанавливая всю память, которую вы запрашиваете, с этим значением.
Inвообще нет, не возможно.
Не совсем. Возможно, вы сможете сделать что-то низкоуровневое и специфичное для ОС, например, посмотреть, не вызывает ли касание памяти ошибку страницы, но я не могу поверить, что кто-то серьезно задумался бы о том, чтобы сделать что-то подобное, когда должно быть лучшее общее решение.
Под «инициализированным» вы, вероятно, подразумеваете «выделенный». В любом случае: нет , это невозможно.
Если указатель НЕДЕЙСТВИТЕЛЕН, вы можете сказать, что он точно не был инициализирован: -)