강의로 돌아가기
오리

실패 (signal: aborted (core dumped))

테스트 4개에서 저런 문구가 뜨는데 왜 그럴까요...?

작성중인 코드―solution.c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <stdio.h>
#include <stdbool.h>
#include <stdlib.h>

// names_len은 배열 names의 길이입니다.
// 파라미터로 주어지는 문자열은 const로 주어집니다. 변경하려면 문자열을 복사해서 사용하세요.
char** solution(const char* names[], size_t names_len) {
    // return 값은 malloc 등 동적 할당을 사용해주세요. 할당 길이는 상황에 맞게 변경해주세요.
    // answer에 names배열 길이 * char 만큼의 메모리 할당
    char** answer = (char**)malloc (sizeof(char)*names_len);
    int res = 0; // answer 배열 위치 표현할 변수
    // 0부터 5를 건너뛴 값까지 저장하기 위한 반복문
    for(int i = 0; i < names_len; i+=5)
    {
        answer[res] = names[i];
        res += 1;
    }

    return answer;
}
1 개의 답변
낙방여우

c는 잘 모르지만... answer의 크기가 작아서 에러가 난거 같습니다.

  • astinel

    10줄 에서 sizeof(char) 를 sizeof(char*) 로 고치면 해결될거 같아요!

    astinel―2023.07.18 17:42
답변 쓰기
이 입력폼은 마크다운 문법을 지원합니다.