본문으로 바로가기

[C] memcpy vs sprintf 차이?

category 프로그래밍/C 2023. 3. 8. 23:02
728x90
반응형

오늘은 memcpy와 sprintf 차이에 대해 알아보겠습니다.

 

memcpy와 sprintf는 모두 메모리 복사에 관련된 함수입니다.

 

써본 분들은 아시겠지만 사용 방법이 다릅니다.

 

 

1. memcpy

 

memcpy 함수는 메모리 복사를 할때 사용합니다.

 

특정 메모리 영역을 특정 메모리 영역으로 복사할 때 사용합니다.

 

메모리 복사 함수 중에서 매우 빠르며, 최적화 되어 있습니다

 

2. snprintf

 

sprintf 함수는 문자열을 다른 문자열에 복사하는데 사용합니다.

 

sprintf는 문자열 이기 때문에 서식문자(%d, %s 등)로 포맷팅을 하여 문자열을 복사할 수 있습니다.

 

memcpy는 이러한 것이 불가능합니다

 

또한, 서식문자가 많을수록 복사 시간은 더욱더 증가합니다.

 

 

두 함수는 사용법 자체가 다르기 때문에, 상황에 맞게 적절하게 사용하면 됩니다.

 

결론은 메모리 복사만 봤을때는 memcpy가 snprint보다 훨씬 빠릅니다.

728x90
반응형