#include <iostream> int ee = 7; void qwerec( const void* buf ) { buf = (char * )& ee; } int Rec() { int qr = 0; qwerec( (char * )&qr ); return qr; } int main(int argc, char* argv[]) { int qq = 5; qq = Rec(); std::cout << qq; system ( "pause" ); return 0; } Smart people, tell me why prints 0, not 7?