关于malloc(sizeof(char)*(strlen(pDepartment)+1))

malloc(sizeof(char)*(strlen(pDepartment)+1)) 这句 写成“:
malloc(strlen(pDepartment)+1)) 不就好了, 干嘛要用sizeof 呢 ,看着费解。
我这样做正确吗?

ansi c规定,sizeof(char) = 1。因此,符合标准的C编译器,两者结果一样。但是也不排除有那么一些另类的编译器有什么不同。但是我没见过。

对于char 类型,(16,32,64)位的编译器都是占一个字节