请教一个C中的指针问题!
unsigned char *pu8TempPtr1 = (unsigned char *)malloc(size + 1);
*pu8TempPtr1 = (unsigned char *)1;
return ((void *)(pu8TempPtr1 + 1));
主要是对第二句理解的不是很透彻,希望哪位详细的解释以下,谢啦!
[解决办法]
就是把刚分配内存的第一个byte写1吧
*pu8TempPtr1 = (unsigned char)1; //这样写就好了,强制转换指针不知道编译能通过吗(应该不能吧),
[解决办法]
把1强转为unsigned char *。然后赋给*pu8TempPtr1 ,C++里肯定会报错。类型不符
C里如果没报错,那就等同*pu8TempPtr1 = 1;
[解决办法]
第二句类型不符啊……