你的代码问题 char *a;变量是指针ret1进行了地址偏移,地址偏移可能越界了ret1初始化时申请的内存大小,导致a内存越界,代码不全,是这个方向,但是细节得更多代码
你这个程序有问题吧?现在写入的*a 这个地址是非法的。你上面定义了一个指针变量a,你确定下,这个指针变量合法吗?