Hi I came across the question in "Test your skills in c++".
Please let me know what does it mean with an example?
Edited Section: Sorry for the extra parenthesis, edited & removed.
char (*(*a[4])())[5]
See Question&Answers more detail:osHi I came across the question in "Test your skills in c++".
Please let me know what does it mean with an example?
Edited Section: Sorry for the extra parenthesis, edited & removed.
char (*(*a[4])())[5]
See Question&Answers more detail:osFollowing the spiral rule (as linked to by chris), and starting with the identifier:
a
...is...
a[4]
...an array of 4...
*a[4]
...pointers to...
(*a[4])()
...a function taking no parameters...
*(*a[4])()
...returning pointer to...
(*(*a[4])())[5]
...an array of five...
char (*(*a[4])())[5]
...chars.
Sidenote: Go give the architect who came up with this a good dressing-down, then find the programmer who wrote this code without a comment explaining it and give him a good dressing-down. In case this was given to you as a homework, tell your teacher that he should have instructed you on how to use cdecl instead, or how to design code in a way that it doesn't look like madman scrawlings, instead of wasting your time with this.