以下のプログラム中のsprintfはどのような働きでしょうか?

if(p >= 10000 ){
    sprintf(str,"D:\\○○研_生産情報特別実験_中山_引継ぎ\\System\\Final\\講義中の教師の動作の推定と記録を行うシステム\\OpenCV-Sample001\\講義画像\\cap%05d.bmp",p);
}else{
    sprintf(str,"D:\\○○研_生産情報特別実験_中山_引継ぎ\\System\\Final\\講義中の教師の動作の推定と記録を行うシステム\\OpenCV-Sample001\\講義画像\\cap%04d.bmp",p);
}