< />

注意数组在栈使用后会被销毁 kisara

注意数组在栈使用后会被销毁

char *get() {
char data[16] = hello, world;
    return data;
}
void main(void)  {
    char *p = get();
    printf(%s, p);
}

这是一道哔哩哔哩的真题,其中注意get返回data的指针,但是在栈空间中,get函数结束data就会被销毁,p就会指向一个毫无意义的地方,输出p可能就会出现乱码。

kisarawechat kisaraalipay