HELLOWORLD문제를 풀때 왜 쓰레기 값이 생성되지 않는지 궁금해요

  • 이하연
    이하연

    HELLOWORLD
    연습 문제

    #include<stdio.h>
    int main() {
         int cases;
         char name[1024];
        scanf("%d", &cases);
        while(cases--) {
            scanf("%s", name);
            printf("Hello, %s!\n", name);
        }
     }
    

    별도의 초기화가 없다면 반복해서 이름을 입력받을때
    scanf로 입력 받은 이전 이름이 다음 이름보다 길면 출력시 이전 이름의 일부가 출력되어야하는 것아닌가요?
    궁금합니다


    9년 전
1개의 댓글이 있습니다.
  • JongMan
    JongMan

    C의 문자열을 입력받는 함수들은 문자열을 다 입력받은 뒤 \0 문자를 맨 뒤에다 추가해 줍니다. C가 문자열을 어떻게 다루는지 찾아보시면 이해하실 수 있을 듯..


    9년 전 link
  • 정회원 권한이 있어야 커멘트를 다실 수 있습니다. 정회원이 되시려면 온라인 저지에서 5문제 이상을 푸시고, 가입 후 7일 이상이 지나셔야 합니다. 현재 문제를 푸셨습니다.