How bad rand from stdlib.h is?-Collection of common programming errors
There are two issues: (1) because RAND_MAX is only guaranteed to be at least 32767, there might not be many possible values (not necessarily bad for some applications), and (2) poor implementations.
If you need what is known as a secure random number generator you will need to look somewhere else. But for many apps, rand() is sufficient.
A blog post that addresses your concerns is http://eternallyconfuzzled.com/arts/jsw_art_rand.aspx.