Are there specific rules for defining a function in C? <p>I am writing a script that can process .c and .h files. Using regular expressions I am finding all functions within a given file. During my experiences with C I always defined functions in the following manner:</p> <pre><code>void foo(int a){ //random code } </code></pre> <p>Is it possible to declare a function in the following manner: </p> <pre><code>void foo(int a){ //random code } </code></pre> <p>I always assumed that the function type, name, and parameters needed to be in the same line, but I've been told otherwise so I'm not exactly sure. </p>