#include <iostream>
int main()
{
int* i = 0;
int x = (*i);
std::cout << x;
}
Powyższy program padnie gdy skompilować i uruchomić go za pomocą Visual Studio 2010
i wiem, że wywala bo ustawić wskaźnik do 0.próbuje uzyskać dostęp do pustego wskaźnika
Co chciałbym wiedzieć, jest dostęp do null pointer
w języku C++ zdefiniowanym w standardzie lub czy jest on niezdefiniowany i po prostu mam szczęście, że mój program się zawiesił z powodu mojego kompilatora/komputera/systemu operacyjnego
Jeśli jest zdefiniowany, co gwarantuje C++, gdy próbuję i uzyskać dostęp do wskaźnika pustego?
Nieokreślony. –
@ R.MartinhoFernandes Więc mogę się spodziewać, że na niektórych komputerach to się nie zawiesi? – Caesar
Tak, ale możesz także oczekiwać, że formatuje dysk twardy na innych. – Laurijssen