首页 > 代码库 > 【C语言】指针
【C语言】指针
一种错误的写法:
int * x = (int *)malloc(5 * sizeof(int));int * y = (int *)malloc(5 * sizeof(int));y = x;
没有必要为y开辟内存,因为y在开辟内存时 y内存储的地址时开辟的内存的位置, 但是后面又把x的值赋给了y, y原本的内存值失去了控制。
而再 free(y); 时, free的其实是x开辟的内存,整个过程都失控了。
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。