프로그래머스 level0 문자열 뒤집기 문제를 풀다가 strlen 함수에 대한 이해가 부족하여 구글링해서 풀었었다.
윤성우 열혈 C프로그래밍 책을 통해 공부한 내용을 정리해봤다.
https://icegosimperson.tistory.com/29
[C] 문자열 뒤집기
문제 설명 문자열 my_string이 매개변수로 주어집니다. my_string을 거꾸로 뒤집은 문자열을 return하도록 solution 함수를 완성해주세요. 제한사항 1 ≤ my_string의 길이 ≤ 1,000 입출력 예 my_string return "jaro
icegosimperson.tistory.com
strlen 함수란
#include <string.h>
size_t strlen(const char *s);
인자로 전달된 문자열의 길이를 반환하는 함수이다. 문자열과 관련된 문제에서 많이 사용되는 함수이다.
전달된 문자열의 길이를 반환하되, 널 문자(\0)는 길이에 포함하지 않는다.
strlen 함수의 호출 방법
int main(void)
{
char str[] ="1234567";
printf("%u\n", strlen(str));
}
7이 출력된다.
프로그래머스 level0 문자열 뒤집기 코드
#include <stdio.h>
#include <stdbool.h>
#include <stdlib.h>
char* solution(const char* my_string)
{
int p = strlen(my_string);
char* answer = (char*)malloc(p);
for(int i=0; i<p+1; i++)
answer[i]=my_string[p-1-i];
return answer;
}
my_string의 문자열 길이를 반환하기 위해 strlen 함수를 사용하였음을 알 수 있다.