1.奇怪点:如果我只是需要一个结点的空间为什么malloc的转换形式写成——Node=(int *)malloc(sizeof(int))

自我解答:void *malloc(unsigned int size);其作用是在内存的动态存储区中分配一个长度为size的连续空间。此函数的返回值是分配区域的起始地址,或者说,此函数是一个指针型函数,返回的指针指向该分配域的开头位置。

重点就在荧光~,malloc分配的就是一块空间,返回的就是地址的指针,所以malloc应该是指针类型的

2.奇怪点:如果我设置了一个指针A,指向了指针B,我为A分配空间的话,是否也为B分配了空间呢?

自我解答:经过一番测试之后,其实这个问题很傻,总结根源是因为对指针,malloc的内核了解并不深,不透彻

首先明确:

int *haha,*hehe;
haha=&a;
hehe=haha;

这段代码的意思是:把haha指向的地址,告诉了hehe,就好像一个小秘密一样,但是指针太蠢了,一次只能记住一个小秘密,所以当执行如下语句

    hehe=(int*)malloc(sizeof(int));

hehe就只能记住新的秘密:malloc分配到的地址而与haha无瓜了

链表与malloc的疑惑的更多相关文章

  1. 排序算法----基数排序(RadixSort(L))单链表智能版本

    转载http://blog.csdn.net/Shayabean_/article/details/44885917博客 先说说基数排序的思想: 基数排序是非比较型的排序算法,其原理是将整数按位数切割 ...

  2. 排序算法----基数排序(RadixSort(L,max))单链表版本

    转载http://blog.csdn.net/Shayabean_/article/details/44885917博客 先说说基数排序的思想: 基数排序是非比较型的排序算法,其原理是将整数按位数切割 ...

  3. new与malloc

    首先将new与malloc的区别总结如下: 1 new可以自动计算需要分配多大的内存,而malloc必须指明. 2 new返回的指针是有类型的,malloc返回void*类型的指针. 3 new在分配 ...

  4. 「C语言」单链表/双向链表的建立/遍历/插入/删除

    最近临近期末的C语言课程设计比平时练习作业一下难了不止一个档次,第一次接触到了C语言的框架开发,了解了View(界面层).Service(业务逻辑层).Persistence(持久化层)的分离和耦合, ...

  5. C实现通用数据结构--单链表

    单链表概述 单向链表(单链表)是链表的一种,其特点是链表的链接方向是单向的,对链表的访问要通过顺序读取从头部开始. 从概念上讲,可以把链表想象成一系列连续的元素,然而,由于这些元素是动态分配的(C语言 ...

  6. 内存管理概述、内存分配与释放、地址映射机制(mm_struct, vm_area_struct)、malloc/free 的实现

    http://blog.csdn.net/pi9nc/article/details/23334659 注:本分类下文章大多整理自<深入分析linux内核源代码>一书,另有参考其他一些资料 ...

  7. 动态内存管理详解:malloc/free/new/delete/brk/mmap

    c++ 内存获取和释放 new/delete,new[]/delete[] c 内存获取和释放 malloc/free, calloc/realloc 上述8个函数/操作符是c/c++语言里常用来做动 ...

  8. (转)简单的Malloc实现

    现在,一般来说,我们可以实现malloc使得对malloc的调用将会被映射到系统调用sbrk上,sbrk(n)将会移动程序中断的位置-也就是程序的data段的最后.-偏移n个字节,这意味着,n个字节的 ...

  9. 动态内存管理:malloc/free/new/delete/brk/mmap

    这是我去腾讯面试的时候遇到的一个问题——malloc()是如何申请内存的? c++ 内存获取和释放 new/delete,new[]/delete[] c 内存获取和释放 malloc/free, c ...

  10. malloc实现机制

    使用过c语言的都知道malloc是一个动态分配内存的函数,还可以通过free释放内存空间. 如果我们想分析一下malloc的源码,这其实不是一会就能看懂的,但是我们可以讨论一下malloc的简单实现. ...

随机推荐

  1. [服务器]Windows Server 2008 64位1核1G安装SQL Server2008

    本文为原创文章,转载请注明出处!我的博客地址:http://www.cnblogs.com/txwd 这台服务器是2017年初买的,那时候1核1G,3年要1500.不过现在便宜了,2核4G,3年也就1 ...

  2. What does int main(int argc, char *argv[]) mean?

    忽然发现自己不理解许多代码中这行的含义是什么...(汗颜) 下面贴一段stackoverflow上面的回答: argv and argc are how command line arguments ...

  3. 小白之Linux基础命令

    命令大全 : http://man.linuxde.net/touch --------------------------20170802晚linux ls--显示当前路径下的文件及文件夹名字cd ...

  4. FCOS网络(free anchor)

    FCOS FCOS网络解析 FPN输出多个特征图,然后如何处理这些特征图? [问题]"特征图相对原图的步距是s"是个什么东西

  5. WIN10操作系统如何利用无线网卡连接wifi再通过有线网卡共享网络给路由(双网卡)

    首先有一台笔记本电脑,或者双网卡的电脑(wifi网卡 和 有线网卡) 找到两个个网卡,并重置他们的设置 然后同时选中,右单击选择桥接 桥接成功以后就可以用无线网卡连接wifi,然后把有线网口插上网线直 ...

  6. 自我介绍&学习心得

    这个作业属于哪个课程 https://edu.cnblogs.com/campus/fzzcxy/2023learning/join?id=CfDJ8GXQNXLgcs5PrnWvMs4xAGN4cH ...

  7. 【离线数仓环境搭建】安装linux及安装JDK

    创建新的虚拟机 配置网络 安装vim sudo yum install -y vim 修改免密 sudo vim /etc/sudoers (执行安装命令的时候,不再需要输入密码) 查看防火墙状态 s ...

  8. dev gridControl控件 常用使用方法及设置(实时更新)

    dev gridControl控件 常用使用方法及设置(实时更新) 新增方法: +1.GridControl中GridView的指定列自动排序功能 gridView1.BeginSort();//事务 ...

  9. wpf DataGrid cell 背景色修改参考

    <DataTemplate.Triggers> <DataTrigger Binding="{Binding Path=IsSelected, RelativeSource ...

  10. 如何理解JavaScript中常用的4种排序算法?

      如何理解JavaScript中常用的4种排序算法? 冒泡排序 冒泡排序是我们在编程算法中,算是比较常用的排序算法之一,在学习阶段,也是最需要接触理解的算法,所以我们放在第一个来学习. 算法介绍: ...