프로그래머스코딩테스트연습풀이/C언어

[프로그래머스/C언어] 공백으로 구분하기 1

코코쵸마 2023. 8. 2. 11:16

문제

단어가 공백 한 개로 구분되어 있는 문자열 my_string이 매개변수로 주어질 때, my_string에 나온 단어를 앞에서부터 순서대로 담은 문자열 배열을 return 하는 solution 함수를 작성해 주세요.

 

솔루션

#include <stdio.h>
#include <stdbool.h>
#include <stdlib.h>

// 파라미터로 주어지는 문자열은 const로 주어집니다. 변경하려면 문자열을 복사해서 사용하세요.
char** solution(const char* my_string) {
    // return 값은 malloc 등 동적 할당을 사용해주세요. 할당 길이는 상황에 맞게 변경해주세요.
    char** answer = (char**)malloc(1000*1000*sizeof(char));
    char *ptr = strtok(my_string, " ");
    int i = 0;
    while(ptr != NULL){
        answer[i++] = ptr;
        ptr = strtok(NULL, " ");
    }
    answer[i] = '\0';
    return answer;
}

https://school.programmers.co.kr/learn/courses/30/lessons/181869