关于《windows》程序设计中 Environ.c和 Head.c的有关问题

关于《windows》程序设计中 Environ.c和 Head.c的问题
书中的源代码应该没问题吧
可是编译的时候报这个错

D:\Program   Files\Microsoft   Visual   Studio\MyProjects\Environ\Environ.cpp(70)   :   error   C2440:   '= '   :   cannot   convert   from   'void   * '   to   'char   * '
                Conversion   from   'void* '   to   pointer   to   non- 'void '   requires   an   explicit   cast
D:\Program   Files\Microsoft   Visual   Studio\MyProjects\Environ\Environ.cpp(127)   :   error   C2440:   '= '   :   cannot   convert   from   'void   * '   to   'char   * '
                Conversion   from   'void* '   to   pointer   to   non- 'void '   requires   an   explicit   cast
D:\Program   Files\Microsoft   Visual   Studio\MyProjects\Environ\Environ.cpp(133)   :   error   C2440:   '= '   :   cannot   convert   from   'void   * '   to   'char   * '
                Conversion   from   'void* '   to   pointer   to   non- 'void '   requires   an   explicit   cast
Error   executing   cl.exe.

Environ.exe   -   3   error(s),   0   warning(s)


==========================================

还有Head.c中也是这个问题

D:\Program   Files\Microsoft   Visual   Studio\MyProjects\Head\Head.cpp(179)   :   error   C2664:   'ReadFile '   :   cannot   convert   parameter   4   from   'int   * '   to   'unsigned   long   * '
                Types   pointed   to   are   unrelated;   conversion   requires   reinterpret_cast,   C-style   cast   or   function-style   cast
D:\Program   Files\Microsoft   Visual   Studio\MyProjects\Head\Head.cpp(192)   :   error   C2664:   'DrawTextA '   :   cannot   convert   parameter   2   from   'unsigned   char   [8192] '   to   'const   char   * '
                Types   pointed   to   are   unrelated;   conversion   requires   reinterpret_cast,   C-style   cast   or   function-style   cast
Error   executing   cl.exe.

Head.exe   -   2   error(s),   0   warning(s)

========================================

请教高手了~!

------解决方案--------------------
看看源码才知道。不行的话强制转化一下。可能编译器版本不同,对于数据类型的强制性检查也不一样。