title: C isn't that hard: void ( *( *f[] ) () ) ()
body: <p>I just saw a picture today and think I'd appreciate explanations. So here is the picture:  </p>
  
  <p><a href="https://i.stack.imgur.com/Qn5ZL.jpg" rel="noreferrer"><img src="https://i.stack.imgur.com/Qn5ZL.jpg" alt="some c code"></a></p>
  
  <p>I found this confusing and wondered if such codes are ever practical. I googled the picture and found another picture in <a href="https://www.reddit.com/r/ProgrammerHumor/comments/3yfpub/c_isnt_that_hard/cyd5f8d" rel="noreferrer">this</a> reddit entry, and here is that picture:  </p>
  
  <p><a href="https://i.stack.imgur.com/pcZs7.png" rel="noreferrer"><img src="https://i.stack.imgur.com/pcZs7.png" alt="some interesting explanation"></a></p>
  
  <p>So this "reading spirally" is something valid? Is this how C compilers parse?<br>
  It'd be great if there are simpler explanations for this weird code.<br>
  Apart from all, can these kind of codes be useful? If so, where and when?  </p>
  
  <p>There is <a href="https://stackoverflow.com/questions/3707096/spiral-rule-and-declaration-follows-usage-for-parsing-c-and-c-declarations">a question</a> about "spiral rule", but I'm not just asking about how it's applied or how expressions are read with that rule. I'm questioning usage of such expressions and spiral rule's validity as well. Regarding these, some nice answers are already posted.</p>