int main()
{
char *p;
char *name = "abc";
char *q;
p = (char*)malloc(sizeof(char*) + strlen(name)+1);
q = (char*)(&p[1]);
strcpy(q, name);
printf("%s/n", q);
}
打印结果: abc
其实只是一种编程技巧,先malloc足够的空间,然后将数据放入某个地址,稍后再来添加首部信息。