关于malloc如何使用,malloc的实现这个很多人还不知道,今天小篇来为大家解答以上的问题,现在让我们一起来看看吧!
malloc如何使用 malloc的实现
malloc如何使用 malloc的实现
malloc如何使用 malloc的实现
1、函数的形参指针,对指针进行sizeof作,只能得到指针在内存中所占的大小,而不是指针所指向的内容的大小。
2、在这个函数中,你若想知道a1和a2的长度,确保字符串结尾存在'0'后,可以用strlen得到字符串长度。
3、如果字符串中没有结束符,只能在函数的参数中带入字符串的长度,在函数中直接分配空间。
4、问题出在你的sizeof使用错误,sizeof输入的是指针变量,而指针变量的大小在32位下统一是4个字节,因此x和y总会是4。
5、如果a1和a2均指向字符串的话,可以用strlen去获取字符串长度(注意字符串是有'0'来做结束符),另外你的a3应该定义成指针变量,如char a3,这样才可以a3=(char )malloc(z);char a3;x=strlen(a1);y=strlen(a2);z=x+y+1;a3=(char )malloc(z);。
本文到这结束,希望上面文章对大家有所帮助。