[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]
Re: gcc not compiling
- From: Les Mikesell <lesmikesell gmail com>
- To: For users of Fedora Core releases <fedora-list redhat com>
- Subject: Re: gcc not compiling
- Date: Mon, 31 Oct 2005 23:49:46 -0600
On Mon, 2005-10-31 at 16:36, Matthew Saltzman wrote:
> >
> > I meant to comment that these two different notations are functionally
> > identical; an array name is nothing more than a pointer. For example,
> > if we have the following code:
> >
> >
> > #include <stdio.h>
> > void main (void){
> >
> > char foo[] = "This is a string\n";
> > char *bar = foo;
> >
> > /* these expressions all print "T\n" */
> > printf("%c\n", foo[0]);
> > printf("%c\n", *bar);
> > printf("%c\n", bar[0]);
> > printf("%c\n", *foo);
>
> /* ...and my favorite... */
>
> printf("%c\n", 0[foo]);
> >
> > /* these expressions all print "i\n" */
> > printf("%c\n", foo[2]);
> > printf("%c\n", *(bar + 2));
> > printf("%c\n", bar[2]);
> > printf("%c\n", *(foo + 2));
>
> printf("%c\n", 2[foo]);
>
> /* That's right, folks, [] is commutative! */
/* Or, if you have a strong stomach, simplify to:
printf("%c\n", "This is a string\n"[2]) ;
printf("%c\n", 2["This is a string\n"] ) ;
/* It's all simple addition...*/
> > }
--
Les Mikesell
lesmikesell gmail com
[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]