Now, on to some common problems with getting C programs to compile and run. In the case of exploit programs, there often are references to other programs on your target computer. This works fine for a Linux computer. So you can see that an important first check on an exploit is to make sure all the locations of files match those of the operating system you are targeting. Another problem is that sometimes hackers purposely cripple their exploit code in order to keep total idiots from running them.
Comments help people understand a program.
However, a lot of code commented out may be simply debugging code the programmer used to make sure it was running properly. Another reason why many people were unable to run that syn flood program was that it had to be installed with root permissions. A syn flood program needs root permission in order to manipulate the creation of packets so as to send floods of them out to the victim with only the syn flag set, never an ack flag. Another of your problems may be the include files at the beginning of a C program. It is merely a C header file.