[C언어] 문자열 복사 후, 왜 answer[s] = '\0';을 넣어야 하는가
strncpy 함수지정한 길이만큼 문자열을 복사하지만, 복사한 문자열에 자동으로 널 종료 문자('\0')를 추가하지 않을 수 있음.하지만, 만약 복사한 길이가 정확히 s라면, 그 다음에 어떤 값이 있을 수 있기 때문에 answer[s]는 원하지 않는 값이 들어갈 수 있음.예를 들어, strncpy(answer, my_string, s);라고 하면 my_string의 앞 s개 문자를 answer에 복사. 하지만 복사한 문자열이 s개라면, 그 뒤에 answer[s]는 무엇인가 쓰일 수 있기 때문에 널 종료 문자를 수동으로 추가해야 함. 결국, 문자열을 제대로 처리하려면 끝에 '\0'이 있어야 한다.C 문자열 함수들(strcat, printf 등)은 문자열이 '\0'으로 끝날 때까지 처리하므로, 문자열의 끝..
2025. 2. 28.
[Python] 프로그래머스 알고리즘 고득점 Kit ✅ 완전탐색 (~ing)
[Level 1] 최소 직사각형def solution(sizes): answer = 0 w_list = [] h_list = [] for size in sizes: # 큰 값들은 다 왼쪽으로 넘기기 if size[0] [Level 1] 모의고사def solution(answers): answer = [] # 수포자 답안 패턴 person_1 = [1, 2, 3, 4, 5] person_2 = [2, 1, 2, 3, 2, 4, 2, 5] person_3 = [3, 3, 1, 1, 2, 2, 4, 4, 5, 5] # 맞은 개수 count one_count = 0 ; two_count = 0 ;..
2025. 2. 25.