conversion from char[]

I am trying to put the contents of a char buffer[512] into a word* (type def as data type short). How do I do this? I have tried memcpy but am either getting an exception or it will run but the word* is undefined value after the copy. Any advice would be appreciated. Thanks.

I always hate it when someone changes a descriptive name like short, which is a small integer, to something like word, which to me should be a string of some sort rather than an alias for short. That being said, if you are truly trying to change a string, like a char[] or a char * into a numerical value (of whatever type or typedef you want) then I'd look up stringstreams and maybe sprintf(), strtol(), atoi(), atol(), or atof().