我在代码的几乎每个部分都看到了以下初始化本地指针的方法。想了解这样做的原因和复杂性。
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void initialize_p(char **p)
{
char *p_local = NULL;
p_local=malloc(6);
strcpy(p_local,"sandy");
*p = p_local;
}
int main(void)
{
char *p = NULL;
initialize_p(&p);
printf("Name : %s\n",p);
return 0;
}
就是这样,我在这里用简单的字符串显示。在我的实际代码中,它是使用结构完成的。
我有点理解上述逻辑,但我也不明白。请明确上述实现方式所涉及的概念。另外,让我知道是否有其他更好的方法可以做到这一点。
请赐教.. :)