2012-07-20 6 views
2

내 제품에서 SECURITY CODING 위반을 제거하기 위해 노력하고 있습니다. 내 코드 sprintf 많이 가지고, coverity 도구는 snprintf을 사용하는 것이 좋습니다,하지만 C++ 또한 std::stringstream 있습니다. 좋은 생각이 snprintfsnprintf 대 std :: stringstream

+0

중요한 점은 성능에 따라 snprintf를 사용하고, 유형이 안전하다면 stringstream을 사용하십시오 –

답변

6

std::stringstream의 장소에서 std::stringstream을 사용하는 것입니다하는 형태 보증, 사용 사업자 < <이며, 내부 버퍼, C++의 일부가 아니라 너무 빨리 sprintf 등을 사용합니다.
sprintf은 typesafe가 아니며 C++ 연산자를 사용하지 않고 외부 버퍼를 사용하며 elipsis를 사용합니다.이 형식은 C에서 상 속된 POD 유형에서만 작동합니다.