char *gets(char *s);

A C function that reads a line from stdin, and places it to string given as an argument. It also returns the string.

This function looks temptingly easy to use and cool, but it doesn't do any array bounds checking. Thus, you should not use this function! If someone inputs a string that's longer than the allocated array, in best case you get segmentation fault, in worst case you clobber your own variables with data (see buffer overflow).

This function can be easily replaced with fgets(), though.

Oh yeah, for the newbies out there: If you're looking for a good C book, browse through what your bookstore has. If the C book instructs how to use gets() and doesn't tell it's dangerous, get some other book. Good books tell why you shouldn't use it. As said, this function is not for anyone.