Beefy Boxes and Bandwidth Generously Provided by pair Networks
Don't ask to ask, just ask

Re^4: The Concept of References

by revdiablo (Prior)
on Apr 14, 2005 at 18:06 UTC ( #447892=note: print w/replies, xml ) Need Help??

in reply to Re^3: The Concept of References
in thread The Concept of References

Correct me if I'm wrong, but I was under the impression that the pointer itself doesn't know whether it's a pointer to a struct, or anything else. The pointer just points to a spot of memory. It's the syntax that you use that determines how the memory gets used.

Perl's references, on the other hand, know what they're referring to. If you try to use a hash reference as an array reference, perl can look at the reference type and say, "wait a minute, that's not an array reference!"

I don't know how much difference this makes in terms of usage, but it's certainly a difference between the two constructs.

Replies are listed 'Best First'.
Re^5: The Concept of References
by polettix (Vicar) on Apr 14, 2005 at 18:13 UTC
    No, a pointer in C/C++ is fully typed. The only pointer that really points to a chunk of memory is the void*, but you usually don't want to use it. As a result, it usually happens that you have to typecast a pointer explicitly if you want to make it act as if it was another pointer type:
    int anint; int *p1 = &anint; char *p2 = (char *) p1;

    Flavio (perl -e "print(scalar(reverse('ti.xittelop@oivalf')))")

    Don't fool yourself.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://447892]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others about the Monastery: (5)
As of 2020-10-29 08:55 GMT
Find Nodes?
    Voting Booth?
    My favourite web site is:

    Results (269 votes). Check out past polls.