不知道为什么多申请了一个空间

Posted aria-garden

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了不知道为什么多申请了一个空间相关的知识,希望对你有一定的参考价值。

#include <stdio.h>
#include<string.h>
#include<stdlib.h>
struct ListNode
{
    int val;
    struct ListNode *next;
    
};
void createLink(struct ListNode * head)
{
    head=(struct ListNode * )malloc(sizeof(struct ListNode));
    head->next=NULL;
}
void insertNode(struct ListNode * head,int val)
{
    struct ListNode * node=(struct ListNode * )malloc(sizeof(struct ListNode));
    printf("%p
",node);
    node->val=val;//
    node->next=head->next;
    head->next=node;
    
}
void printList(struct ListNode * head)
{
    struct ListNode * pmove;
    pmove=head;
    while(pmove!=NULL)
    {
        printf("%d ",pmove->val);//我没有多mallco一个空间,但是在单步调试的时候,却看到我多申请了一个空间。
        printf("%p
",pmove);
        
        pmove=pmove->next;
    }

}
int main(int argc, const char * argv[])
{
    int i;
    struct ListNode *List=(struct ListNode *)malloc(sizeof(struct ListNode));

    createLink(List);

    for(i=0;i<10;i++)
    {
        insertNode(List,i);
    }
    printList(List);
    
    return 0;
}

不知道为什么

 

技术图片

 

以上是关于不知道为什么多申请了一个空间的主要内容,如果未能解决你的问题,请参考以下文章

指针赋值,报错

为啥我做的网页传到网上只能显示图片 显示不出文字

在C++中怎么通过New申请多个连续的存储空间?

关于C++的一个问题,为啥下面这段代码如果不申请空间就成功不了呢?

Linux 栈空间限制 (ulimit -a指令查看限制)(我的ubuntu下每个线程最多只能申请8M栈空间)

Linux 栈空间限制 (ulimit -a指令查看限制)(我的ubuntu下每个线程最多只能申请8M栈空间)