Como pode fopen_s ser mais seguro que fopen?

Eu estou trabalhando em código legado paraWindows plataforma. Quando eu compilo o código emVS2013, dá o seguinte aviso:

erro C4996: 'fopen': Esta função ou variável pode não ser segura. Considere usarfopen_s em vez de. Para desabilitar a depreciação, use _CRT_SECURE_NO_WARNINGS. Veja a ajuda online para detalhes. "

E também dará um aviso similar parasprintf. Compreendosprintf_s é mais seguro que sprintf por causa do estouro de buffer.

Mas como pode serfopen_s ser mais seguro do quefopen, não há chance de estouro de buffer porquefopen não aceita um buffer. Alguém pode fornecer um casofopen não é seguro efopen_s é seguro?

questionAnswers(1)

yourAnswerToTheQuestion