|
|
|
|
|
by lasagnaphil
2711 days ago
|
|
This code, which is clearly undefined behavior (because of dangling pointer), outputs the number 2, which is very worrisome. #include <iostream>
using namespace std;
int* foo() {
int y = 2;
return &y;
}
int main() {
int* x = foo();
cout << *x << endl;
return 0;
}
I would recommend not using this for educational purposes yet; it could mislead students about pointer usage. |
|