How to reverse linked listHow do you set, clear, and toggle a single bit?Using malloc in C to allocate space for a typedef'd typeInserting Linked List Node into ascending sort singly linked List GCC error: dereferencing pointer to incomplete typeConfusion on pointers C (Linked list)C Linked lists with global variablesRecursive Reverse Link ListsReturning a linked list struct from C functionfunction to print linked list in reverse orderarray of linked lists initializationHow to reverse a doubly linked list in c

How to stop the death waves in my city?

Is population size a parameter, or sample size a statistic?

Avoiding dust scattering when you drill

Dynamic DataSource for Droplist in Content Editor

Question about a degree 5 polynomial with no rational roots

GPLv3 forces us to make code available, but to who?

Garage door sticks on a bolt

How deep is the liquid in a half-full hemisphere?

what organs or modifications would be needed to have hairy fish?

What does `idem` mean in the VIM docs?

Create the same subfolders in another folder

Can I target any number of creatures, even if the ability would have no effect?

My machine, client installed VPN,

How far in Advance do I need to book tickets on the West Highland Line in Scotland for a Multi-part Journey?

How many stack cables would be needed if we want to stack two 3850 switches

"I will not" or "I don't" as an answer for negative orders?

What would influence an alien race to map their planet in a way other than the traditional map of the Earth

"until mine is on tight" is a idiom?

Concerning a relationship in the team

Can a passenger predict that an airline is about to go bankrupt?

Why, even after his imprisonment, people keep calling Hannibal Lecter "Doctor"?

LM324 - Issue with output in negative feedback

Why does Captain Marvel in the MCU not have her sash?

How can I become an invalid target for spells that target humanoids?



How to reverse linked list


How do you set, clear, and toggle a single bit?Using malloc in C to allocate space for a typedef'd typeInserting Linked List Node into ascending sort singly linked List GCC error: dereferencing pointer to incomplete typeConfusion on pointers C (Linked list)C Linked lists with global variablesRecursive Reverse Link ListsReturning a linked list struct from C functionfunction to print linked list in reverse orderarray of linked lists initializationHow to reverse a doubly linked list in c






.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;








-1















i'm trying to reverse a linked list returning the reversed list.



typedef struct lligada 


int valor;
struct lligada *prox;

*LInt;


This is my funtion :



LInt reverseL (LInt l)

LInt aux = malloc (sizeof(struct lligada));

if(l != NULL)

while( l -> prox != NULL)
aux = l-> prox;
aux -> prox = l;
l = l-> prox;





else return NULL;

return aux;



Can you help me please ?



I've tried doing this :



if(l != NULL)

if(l -> prox == NULL)
aux = l;


else
while( l -> prox != NULL)
aux = l-> prox;
aux -> prox = l;
l = l-> prox;

aux -> prox = l;





Is that a good idea ?










share|improve this question





















  • 1





    In what way does your solution not work?

    – Evan M
    Mar 28 at 19:20






  • 1





    First of all, your malloc is useless and probably leaks memory

    – Antti Haapala
    Mar 28 at 19:21











  • OT: do not hide pointers in typedef statements

    – user3629249
    Mar 28 at 19:23











  • OT: for ease of readability and understanding: use meaningful variable names. A variable (or parameter) name should indicate content or usage (or better, both) What are l aux proc supposed to represent?

    – user3629249
    Mar 28 at 19:32


















-1















i'm trying to reverse a linked list returning the reversed list.



typedef struct lligada 


int valor;
struct lligada *prox;

*LInt;


This is my funtion :



LInt reverseL (LInt l)

LInt aux = malloc (sizeof(struct lligada));

if(l != NULL)

while( l -> prox != NULL)
aux = l-> prox;
aux -> prox = l;
l = l-> prox;





else return NULL;

return aux;



Can you help me please ?



I've tried doing this :



if(l != NULL)

if(l -> prox == NULL)
aux = l;


else
while( l -> prox != NULL)
aux = l-> prox;
aux -> prox = l;
l = l-> prox;

aux -> prox = l;





Is that a good idea ?










share|improve this question





















  • 1





    In what way does your solution not work?

    – Evan M
    Mar 28 at 19:20






  • 1





    First of all, your malloc is useless and probably leaks memory

    – Antti Haapala
    Mar 28 at 19:21











  • OT: do not hide pointers in typedef statements

    – user3629249
    Mar 28 at 19:23











  • OT: for ease of readability and understanding: use meaningful variable names. A variable (or parameter) name should indicate content or usage (or better, both) What are l aux proc supposed to represent?

    – user3629249
    Mar 28 at 19:32














-1












-1








-1


0






i'm trying to reverse a linked list returning the reversed list.



typedef struct lligada 


int valor;
struct lligada *prox;

*LInt;


This is my funtion :



LInt reverseL (LInt l)

LInt aux = malloc (sizeof(struct lligada));

if(l != NULL)

while( l -> prox != NULL)
aux = l-> prox;
aux -> prox = l;
l = l-> prox;





else return NULL;

return aux;



Can you help me please ?



I've tried doing this :



if(l != NULL)

if(l -> prox == NULL)
aux = l;


else
while( l -> prox != NULL)
aux = l-> prox;
aux -> prox = l;
l = l-> prox;

aux -> prox = l;





Is that a good idea ?










share|improve this question
















i'm trying to reverse a linked list returning the reversed list.



typedef struct lligada 


int valor;
struct lligada *prox;

*LInt;


This is my funtion :



LInt reverseL (LInt l)

LInt aux = malloc (sizeof(struct lligada));

if(l != NULL)

while( l -> prox != NULL)
aux = l-> prox;
aux -> prox = l;
l = l-> prox;





else return NULL;

return aux;



Can you help me please ?



I've tried doing this :



if(l != NULL)

if(l -> prox == NULL)
aux = l;


else
while( l -> prox != NULL)
aux = l-> prox;
aux -> prox = l;
l = l-> prox;

aux -> prox = l;





Is that a good idea ?







c






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Mar 28 at 19:19









user58697

4,9971 gold badge8 silver badges19 bronze badges




4,9971 gold badge8 silver badges19 bronze badges










asked Mar 28 at 19:15









Leonardo MaiaLeonardo Maia

114 bronze badges




114 bronze badges










  • 1





    In what way does your solution not work?

    – Evan M
    Mar 28 at 19:20






  • 1





    First of all, your malloc is useless and probably leaks memory

    – Antti Haapala
    Mar 28 at 19:21











  • OT: do not hide pointers in typedef statements

    – user3629249
    Mar 28 at 19:23











  • OT: for ease of readability and understanding: use meaningful variable names. A variable (or parameter) name should indicate content or usage (or better, both) What are l aux proc supposed to represent?

    – user3629249
    Mar 28 at 19:32













  • 1





    In what way does your solution not work?

    – Evan M
    Mar 28 at 19:20






  • 1





    First of all, your malloc is useless and probably leaks memory

    – Antti Haapala
    Mar 28 at 19:21











  • OT: do not hide pointers in typedef statements

    – user3629249
    Mar 28 at 19:23











  • OT: for ease of readability and understanding: use meaningful variable names. A variable (or parameter) name should indicate content or usage (or better, both) What are l aux proc supposed to represent?

    – user3629249
    Mar 28 at 19:32








1




1





In what way does your solution not work?

– Evan M
Mar 28 at 19:20





In what way does your solution not work?

– Evan M
Mar 28 at 19:20




1




1





First of all, your malloc is useless and probably leaks memory

– Antti Haapala
Mar 28 at 19:21





First of all, your malloc is useless and probably leaks memory

– Antti Haapala
Mar 28 at 19:21













OT: do not hide pointers in typedef statements

– user3629249
Mar 28 at 19:23





OT: do not hide pointers in typedef statements

– user3629249
Mar 28 at 19:23













OT: for ease of readability and understanding: use meaningful variable names. A variable (or parameter) name should indicate content or usage (or better, both) What are l aux proc supposed to represent?

– user3629249
Mar 28 at 19:32






OT: for ease of readability and understanding: use meaningful variable names. A variable (or parameter) name should indicate content or usage (or better, both) What are l aux proc supposed to represent?

– user3629249
Mar 28 at 19:32













1 Answer
1






active

oldest

votes


















1
















First of all the call to malloc is useless in this case and it is a memory leak.



This snippet doesn't work because you create an endless loop between the first two elements



if (l != NULL) 

if (l->prox == NULL)

aux = l;

else

while (l->prox != NULL)

aux = l->prox;
aux->prox = l;
l = l->prox;

aux->prox = l;




You can change like so



LInt new_head, aux;
new_head = NULL;
while (l != NULL)

aux = l->prox;
l->prox = new_head;
new_head = l;
l = aux;


return new_head;





share|improve this answer



























    Your Answer






    StackExchange.ifUsing("editor", function ()
    StackExchange.using("externalEditor", function ()
    StackExchange.using("snippets", function ()
    StackExchange.snippets.init();
    );
    );
    , "code-snippets");

    StackExchange.ready(function()
    var channelOptions =
    tags: "".split(" "),
    id: "1"
    ;
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function()
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled)
    StackExchange.using("snippets", function()
    createEditor();
    );

    else
    createEditor();

    );

    function createEditor()
    StackExchange.prepareEditor(
    heartbeatType: 'answer',
    autoActivateHeartbeat: false,
    convertImagesToLinks: true,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: 10,
    bindNavPrevention: true,
    postfix: "",
    imageUploader:
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/4.0/"u003ecc by-sa 4.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    ,
    onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    );



    );














    draft saved

    draft discarded
















    StackExchange.ready(
    function ()
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55405285%2fhow-to-reverse-linked-list%23new-answer', 'question_page');

    );

    Post as a guest















    Required, but never shown

























    1 Answer
    1






    active

    oldest

    votes








    1 Answer
    1






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    1
















    First of all the call to malloc is useless in this case and it is a memory leak.



    This snippet doesn't work because you create an endless loop between the first two elements



    if (l != NULL) 

    if (l->prox == NULL)

    aux = l;

    else

    while (l->prox != NULL)

    aux = l->prox;
    aux->prox = l;
    l = l->prox;

    aux->prox = l;




    You can change like so



    LInt new_head, aux;
    new_head = NULL;
    while (l != NULL)

    aux = l->prox;
    l->prox = new_head;
    new_head = l;
    l = aux;


    return new_head;





    share|improve this answer





























      1
















      First of all the call to malloc is useless in this case and it is a memory leak.



      This snippet doesn't work because you create an endless loop between the first two elements



      if (l != NULL) 

      if (l->prox == NULL)

      aux = l;

      else

      while (l->prox != NULL)

      aux = l->prox;
      aux->prox = l;
      l = l->prox;

      aux->prox = l;




      You can change like so



      LInt new_head, aux;
      new_head = NULL;
      while (l != NULL)

      aux = l->prox;
      l->prox = new_head;
      new_head = l;
      l = aux;


      return new_head;





      share|improve this answer



























        1














        1










        1









        First of all the call to malloc is useless in this case and it is a memory leak.



        This snippet doesn't work because you create an endless loop between the first two elements



        if (l != NULL) 

        if (l->prox == NULL)

        aux = l;

        else

        while (l->prox != NULL)

        aux = l->prox;
        aux->prox = l;
        l = l->prox;

        aux->prox = l;




        You can change like so



        LInt new_head, aux;
        new_head = NULL;
        while (l != NULL)

        aux = l->prox;
        l->prox = new_head;
        new_head = l;
        l = aux;


        return new_head;





        share|improve this answer













        First of all the call to malloc is useless in this case and it is a memory leak.



        This snippet doesn't work because you create an endless loop between the first two elements



        if (l != NULL) 

        if (l->prox == NULL)

        aux = l;

        else

        while (l->prox != NULL)

        aux = l->prox;
        aux->prox = l;
        l = l->prox;

        aux->prox = l;




        You can change like so



        LInt new_head, aux;
        new_head = NULL;
        while (l != NULL)

        aux = l->prox;
        l->prox = new_head;
        new_head = l;
        l = aux;


        return new_head;






        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Mar 28 at 22:06









        sebastiansebastian

        14210 bronze badges




        14210 bronze badges

































            draft saved

            draft discarded















































            Thanks for contributing an answer to Stack Overflow!


            • Please be sure to answer the question. Provide details and share your research!

            But avoid


            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.

            To learn more, see our tips on writing great answers.




            draft saved


            draft discarded














            StackExchange.ready(
            function ()
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55405285%2fhow-to-reverse-linked-list%23new-answer', 'question_page');

            );

            Post as a guest















            Required, but never shown





















































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown

































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown







            Popular posts from this blog

            Obelisk of Theodosius Contents History Description Notes Bibliography Further reading External links Navigation menuAge of spirituality : late antique and early Christian art, third to seventh centuryOver 60 picturesObelisks of the World41°00′21.24″N 28°58′31.43″E / 41.0059000°N 28.9753972°E / 41.0059000; 28.97539727724550-7235741376235741376

            밀양 대씨 역사 각주 함께 보기 둘러보기 메뉴밀양 대씨

            1973년 목차 사건 문화 탄생 사망 노벨상 달력 둘러보기 메뉴