while studying a quine program in C, I found that, main was passed with just a, there is no datatype. The below runs fine and outputs the program correctly.
main(a){printf(a="main(a){printf(a=%c%s%c,34,a,34);}",34,a,34);}
I would like to know, how does this work (not the actual quine program), but what is data-type of a? What value is it getting?
 
     
     
     
     
    