typedef struct myStruct
{
int j;
} myStruct;
I saw somewhere calls with the following syntax:
f1(&*a)
What should be the protype of f1 so that it will be correct and
so that compilation will succeed ?
I am talking about two cases:
In the first, we have the following definition:
myStruct a;
in the second, we have
myStruct* a;
Is it possible with both case to have a definition of f1() so that
f1(&*a) will be correct and pass compilation ?
Any ideas?
Ian
this looks like homework to me...
--
Nick Keighley
[To the OP] Really? Where? What do you think it will do?
> this looks like homework to me...
It looks like bovine excrement to me.
ret f(struct name *);
struct name obj1, *obj2, obj3[1], **obj4;
f(&obj);
f(obj2);
f(obj3);
f(*obj4);
Etc.
`&*p' == `&p[0]'
>Hello,
>I have a struct defined thus:
>
>typedef struct myStruct
>{
> int j;
>} myStruct;
>
>I saw somewhere calls with the following syntax:
>f1(&*a)
It would help if we new what a was.
What do you think the effect of the combined & and * operators is? For
extra points, would it make a difference if the operators were
reversed? What is the only possible type the expression &*a (or *&a)
can have (on those occasions when it is a legal expression)?
>
>What should be the protype of f1 so that it will be correct and
>so that compilation will succeed ?
The prototype is not the problem.
>
>I am talking about two cases:
>In the first, we have the following definition:
>myStruct a;
What happens when you apply the * operator to a struct?
>
>in the second, we have
>myStruct* a;
>
>Is it possible with both case to have a definition of f1() so that
>f1(&*a) will be correct and pass compilation ?
While passing an incompatible type to a function possibly could be
"corrected" by changing the prototype, what makes you think a
prototype can magically correct a syntax error?
Again, what happens when you apply the * operator to a struct?
>
>Any ideas?
Yes. Make a note of the author who wrote the call to f1. Then make
sure you never again take anything written by him seriously.
Remove del for email