Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.c > #87437

Re: trying a linked list

From Keith Thompson <kst-u@mib.org>
Newsgroups comp.lang.c
Subject Re: trying a linked list
Date 2016-05-08 14:32 -0700
Organization None to speak of
Message-ID <ln1t5cxml6.fsf@kst-u.example.com> (permalink)
References (6 earlier) <ngm0r6$vtm$1@dont-email.me> <lnzis1xn0v.fsf@kst-u.example.com> <ngo0s4$g9h$1@dont-email.me> <87d1owgyev.fsf@bsb.me.uk> <ngo3q2$r9a$1@dont-email.me>

Show all headers | View raw


"Bill Cunningham" <nospam@nspam.invalid> writes:
> "Ben Bacarisse" <ben.usenet@bsb.me.uk> wrote in message 
> news:87d1owgyev.fsf@bsb.me.uk...
>
> ...
>>  #include <stdio.h>
>>
>>  struct node {
>>      int number;
>>      struct node *next;
>>  };
>>
>>  int main(void)
>>  {
>>       struct node n4 = {4, NULL},
>>                   n3 = {3, &n4},
>>                   n2 = {2, &n3},
>>                   n1 = {1, &n2};
>
>     This above is very intriguing code. If I can decypher it it looks like 
> n4 is of type "struct node"

Yes.

>                             Now the members of the struct {4,NULL} that I've 
> never seen. don't member have to have there own types?

Of course they have their own types.  The "number" member has type int,
and the "next" member has type struct node*.  You don't need to specify
those types in the initializer.  The values in the initializer are
assigned to the members of the struct in the order in which those
members are defined: first "number", then "next".  You're almost
certainly seen that kind of thing before.

The 4-line declaration above can (and arguably should) be broken down
to:

    struct node n4 = {4, NULL},
    struct node n3 = {3, &n4};
    struct node n2 = {2, &n3};
    struct node n1 = {1, &n2};

The first line:
    struct node n4 = {4, NULL},
is essentially equivalent to:
    struct node n4;
    n4.number = 4;
    n4.next = NULL;
and similarly for the other three declarations.

This isn't how you'd actually set up a linked list in the real world,
but it's valid and shows the general principles.

>                                                        Or are there some 
> kind of defaults? And the alias's have a value too that is different.

I see no aliases.  What are you referring to?

[...]

-- 
Keith Thompson (The_Other_Keith) kst-u@mib.org  <http://www.ghoti.net/~kst>
Working, but not speaking, for JetHead Development, Inc.
"We must do something.  This is something.  Therefore, we must do this."
    -- Antony Jay and Jonathan Lynn, "Yes Minister"

Back to comp.lang.c | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

trying a linked list "Bill Cunningham" <nospam@nspam.invalid> - 2016-05-07 17:06 -0400
  Re: trying a linked list "Bill Cunningham" <nospam@nspam.invalid> - 2016-05-07 17:32 -0400
    Re: trying a linked list Rosario19 <Ros@invalid.invalid> - 2016-05-07 23:44 +0200
    Re: trying a linked list "martin.ambuhl" <mambuhl@earthlink.net> - 2016-05-07 19:49 -0400
      Re: trying a linked list Richard Heathfield <rjh@cpax.org.uk> - 2016-05-08 07:46 +0100
  Re: trying a linked list Keith Thompson <kst-u@mib.org> - 2016-05-07 14:35 -0700
    Re: trying a linked list "Bill Cunningham" <nospam@nspam.invalid> - 2016-05-07 17:53 -0400
      Re: trying a linked list Keith Thompson <kst-u@mib.org> - 2016-05-07 15:01 -0700
        Re: trying a linked list "Bill Cunningham" <nospam@nspam.invalid> - 2016-05-07 19:18 -0400
          Re: trying a linked list Jerry Stuckle <jstucklex@attglobal.net> - 2016-05-07 19:28 -0400
          Re: trying a linked list Keith Thompson <kst-u@mib.org> - 2016-05-07 16:40 -0700
          Re: trying a linked list Malcolm McLean <malcolm.mclean5@btinternet.com> - 2016-05-07 17:15 -0700
            Re: trying a linked list "Bill Cunningham" <nospam@nspam.invalid> - 2016-05-07 20:25 -0400
              Re: trying a linked list Keith Thompson <kst-u@mib.org> - 2016-05-07 20:10 -0700
                Re: trying a linked list Richard Heathfield <rjh@cpax.org.uk> - 2016-05-08 07:53 +0100
                Re: trying a linked list Keith Thompson <kst-u@mib.org> - 2016-05-08 14:19 -0700
                Re: trying a linked list Manfred <mx2927@gmail.com> - 2016-05-08 18:45 +0200
                Re: trying a linked list "Bill Cunningham" <nospam@nspam.invalid> - 2016-05-08 17:21 -0400
                Re: trying a linked list "Bill Cunningham" <nospam@nspam.invalid> - 2016-05-08 14:38 -0400
                Re: trying a linked list Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-05-08 20:08 +0100
                Re: trying a linked list Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-05-08 20:26 +0100
                Re: trying a linked list "Bill Cunningham" <nospam@nspam.invalid> - 2016-05-08 17:22 -0400
                Re: trying a linked list "Bill Cunningham" <nospam@nspam.invalid> - 2016-05-08 15:28 -0400
                Re: trying a linked list Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-05-08 20:36 +0100
                Re: trying a linked list "Bill Cunningham" <nospam@nspam.invalid> - 2016-05-08 17:17 -0400
                Re: trying a linked list Keith Thompson <kst-u@mib.org> - 2016-05-08 14:56 -0700
                Re: trying a linked list "Bill Cunningham" <nospam@nspam.invalid> - 2016-05-08 18:17 -0400
                Re: trying a linked list Keith Thompson <kst-u@mib.org> - 2016-05-08 19:31 -0700
                Re: trying a linked list "Bill Cunningham" <nospam@nspam.invalid> - 2016-05-09 14:59 -0400
                Re: trying a linked list Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-05-08 23:22 +0100
                Re: trying a linked list "Bill Cunningham" <nospam@nspam.invalid> - 2016-05-09 14:46 -0400
                Re: trying a linked list Keith Thompson <kst-u@mib.org> - 2016-05-08 14:32 -0700
                Re: trying a linked list "Bill Cunningham" <nospam@nspam.invalid> - 2016-05-08 18:05 -0400
                Re: trying a linked list Keith Thompson <kst-u@mib.org> - 2016-05-08 14:26 -0700
                Re: trying a linked list "Bill Cunningham" <nospam@nspam.invalid> - 2016-05-09 13:50 -0400
                Re: trying a linked list "Bill Cunningham" <nospam@nspam.invalid> - 2016-05-09 14:08 -0400
                Re: trying a linked list Keith Thompson <kst-u@mib.org> - 2016-05-09 11:38 -0700
                Re: trying a linked list "Bill Cunningham" <nospam@nspam.invalid> - 2016-05-09 14:50 -0400
                Re: trying a linked list "Bill Cunningham" <nospam@nspam.invalid> - 2016-05-09 14:51 -0400
                Re: trying a linked list Keith Thompson <kst-u@mib.org> - 2016-05-09 13:51 -0700
                Re: trying a linked list Ken Brody <kenbrody@spamcop.net> - 2016-05-09 17:53 -0400
                Re: trying a linked list Keith Thompson <kst-u@mib.org> - 2016-05-09 13:47 -0700
                Re: trying a linked list "Osmium" <r124c4u102@comcast.net> - 2016-05-09 15:58 -0500
                Re: trying a linked list "Bill Cunningham" <nospam@nspam.invalid> - 2016-05-09 17:13 -0400
                Re: trying a linked list Keith Thompson <kst-u@mib.org> - 2016-05-09 14:35 -0700
                Re: trying a linked list "Bill Cunningham" <nospam@nspam.invalid> - 2016-05-09 17:40 -0400
                Re: trying a linked list "Bill Cunningham" <nospam@nspam.invalid> - 2016-05-09 17:41 -0400
                Re: trying a linked list Keith Thompson <kst-u@mib.org> - 2016-05-09 15:10 -0700
                Re: trying a linked list "Bill Cunningham" <nospam@nspam.invalid> - 2016-05-09 22:02 -0400
                Re: trying a linked list Keith Thompson <kst-u@mib.org> - 2016-05-09 21:17 -0700
                Re: trying a linked list "Bill Cunningham" <nospam@nspam.invalid> - 2016-05-09 22:31 -0400
            Re: trying a linked list "Bill Cunningham" <nospam@nspam.invalid> - 2016-05-07 20:30 -0400
            Re: trying a linked list Keith Thompson <kst-u@mib.org> - 2016-05-07 20:06 -0700
            Re: trying a linked list Richard Heathfield <rjh@cpax.org.uk> - 2016-05-08 07:50 +0100
              Re: trying a linked list BartC <bc@freeuk.com> - 2016-05-08 10:33 +0100
                Re: trying a linked list Richard Heathfield <rjh@cpax.org.uk> - 2016-05-08 10:39 +0100
                Re: trying a linked list BartC <bc@freeuk.com> - 2016-05-08 11:14 +0100
                Re: trying a linked list Richard Heathfield <rjh@cpax.org.uk> - 2016-05-08 13:34 +0100
                Re: trying a linked list BartC <bc@freeuk.com> - 2016-05-08 14:39 +0100
                Re: trying a linked list Richard Heathfield <rjh@cpax.org.uk> - 2016-05-08 14:51 +0100
                Re: trying a linked list Siri Cruise <chine.bleu@yahoo.com> - 2016-05-08 07:30 -0700
              Re: trying a linked list Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-05-08 10:36 +0100
                Re: trying a linked list Malcolm McLean <malcolm.mclean5@btinternet.com> - 2016-05-08 02:49 -0700
                Re: trying a linked list Keith Thompson <kst-u@mib.org> - 2016-05-08 14:17 -0700
                Re: trying a linked list Malcolm McLean <malcolm.mclean5@btinternet.com> - 2016-05-08 14:36 -0700
                Re: trying a linked list Keith Thompson <kst-u@mib.org> - 2016-05-08 14:57 -0700
                Re: trying a linked list Malcolm McLean <malcolm.mclean5@btinternet.com> - 2016-05-09 13:28 -0700

csiph-web