Currently there is no need for this unless otherwise if you want to use old library. So most of the new C compilers are not adding leading underscores; however it also depends on the platform and object file. For example, Linux a.out GCC does such prepending, while Linux ELF GCC does not.
To explicitly tell the GCC compiler to not to use leading underscore you can use –fno-leading-underscore option.
Note: FORTRAN was adding both leading and trailing underscores to avoid name collision to avoid naming collision with C.