• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    해결됨

printf의 return value에 대해

23.06.13 08:30 작성 조회수 385

1

printf가 문자열의 길이를 return 한다면 문자열을 다룰 때 한정으로 strlen 함수와 같은 값을 반환하는 걸까요?

답변 1

답변을 작성해보세요.

2

Soobak님의 프로필

Soobak

2023.06.13

안녕하세요, 답변 도우미 Soobak 입니다.

네, printf() 함수와 strlen() 함수가 동일한 문자열 인수를 다룰 때에 한정해서는 말씀하신 내용이 맞습니다.

printf() 함수의 반환값은 출력된 문자들의 개수입니다. 만약에 출력에 실패하면, 음수 값을 반환합니다.

strlen() 함수는 문자열에서 NULL('\0') 문자를 만날 때까지 문자열 내의 문자들을 세고, 그 개수를 반환합니다.

따라서, printf() 함수가 문자열을 출력하는 경우, 반환값은 출력된 문자들의 개수이므로, 출력된 문자열이 담긴 문자 배열의 길이와 strlen() 함수의 반환값은 일치합니다.