enum function bug?

Gary McKenney gbm at galbp.UUCP
Thu Sep 25 23:24:57 AEST 1986


> > On a somewhat related matter, I noticed the following:
> > 
> > AT&T 5.2.2 source seems to accept the following, but Berkeley 4.2 & 4.3beta
> > give a warning of inconsistent usage.
> > 
> > struct st { int c ; } ; 
> > int func (b);
> >    int b; 
> > {
> > }
> > main()
> > {
> >    struct st s;
> >    func (&s);
> > }
> > 
> > If 's' were a character array, however, AT&T would also complain.
> > 
> > Dave Ray   --  uucp:  {ucf-cs|allegra}!novavax!hrshcx!hcx1!daver
> 
> Why don't you try:
> 
>      func (&s.c);
> 
> I think this will be excepted to both and it still points to the beginning
> of the structure.
> 
> 
> gbm

One additional comment (and error on my part).  Your function is suppose
to receive an integer, not a pointer to a structure.

if you intend to receive an integer in func() then you should code...

	struct st { int c ; } ; 
	int func (b);
	   int b; 
	{
	}
	main()
	{
	   struct st s;
	   func (s.c);
	}

else if you intend to pass a pointer to the structure then you should code...


	struct st { int c ; } ; 
	int func (b);
	    char *b; 
	{
	}
	main()
	{
	   struct st s;
	   func (&s.c);
	}



More information about the Comp.lang.c mailing list