c언어 질문입니다.

조회수 411회

#include <stdio.h>
int main(void) {


    char name[22];
    printf("이름이 뭐에요? ");
    scanf_s("%s", name, sizeof(name));

    int age;
    printf("몇살이에요? ");
    scanf_s("%d", &age);

    float weight;
    printf("몸무게는 몇 kg 이에요? ");
    scanf_s("%f", &weight);

    double height;
    printf("키는 몇 cm이예요? ");
    scanf_s("%lf", &height);

    char what[22];
    printf("무슨 범죄를 저질렀어요? ");
    scanf_s("%s", what, sizeof(what));

    printf("\n\n--- 범죄자 정보 ---\n\n");
    printf("이름  : %s\n", name);
    printf("나이  : %d\n", age);
    printf("몸무게   : %.2f\n", weight);
    printf("키 : %.2lf\n", height);
    printf("범죄  : %s\n", what);


    return 0;
}

scanf_s("%s", name, sizeof(name));

scanf_s("%s", what, sizeof(what));

여기 2개 오류가 나면서

C6328 , C4477 > 크기 불일치 라고 'unsigned_int64' 가 _Param_(3)으로 전달되었습니다 이렇게 뜹니다..

  • char name[22];을 char name[256];으로 바꾸어줘야 합니다. 그리고 char what[22];을 char what[256]으로 바꾸어줘야합니다. 범위지정 오류인 것 같습니다. 배창일 2022.10.24 13:56
  • 256 으로 바꾸어도 똑같이 오류가 나서 질문을 드립니다ㅠㅠㅜㅠ 김강민 2022.10.24 16:53
  • 방금 복사해서.. 256으로 고쳐셔 실행하니까.. 잘 되는데요^^ 배창일 2022.10.24 16:58
  • 오류가 안 나나요..? 흠..제 화면에선 왜 자꾸 오류가 나지.. 김강민 2022.10.24 17:04
  • 혹시.. 다른 연습 프로그램을 띄우신건 아니신지? 여러개 띄우시면 비활성 코딩은 /* */주석 처리 다하셔야 합니다. 배창일 2022.10.24 17:06
  • return 0; } 김강민 2022.10.24 17:07
  • 여기 리턴 0 이랑 대괄호 하나 빼니까 오류가 사라졌는데 대괄호 랑 리턴 0 은 안 써도 되는 코드인가요.? 김강민 2022.10.24 17:07
  • 아마 중복되셔서 그런거 아닐까요?^^ 대괄호는 전체 코딩을 안봐서 모르겠습니다 배창일 2022.10.24 17:08
  • return 0; 없이도 동작이 제대로 작동이 되서 신기하네요 감사합니다! 김강민 2022.10.24 17:10
  • 잘해결되셔서 다행이네요^^ 배창일 2022.10.24 17:11

1 답변

  • 좋아요

    0

    싫어요
    채택 취소하기
    char name[256];
    printf("이름이 뭐에요? ");
    scanf_s("%s", name, sizeof(name));
    
    int age;
    printf("몇살이에요? ");
    scanf_s("%d", &age);
    
    float weight;
    printf("몸무게는 몇 kg 이에요? ");
    scanf_s("%f", &weight);
    
    double height;
    printf("키는 몇 cm이예요? ");
    scanf_s("%lf", &height);
    
    char what[256];
    printf("무슨 범죄를 저질렀어요? ");
    scanf_s("%s", what, sizeof(what));
    
    printf("\n\n--- 범죄자 정보 ---\n\n");
    printf("이름  : %s\n", name);
    printf("나이  : %d\n", age);
    printf("몸무게   : %.2f\n", weight);
    printf("키 : %.2lf\n", height);
    printf("범죄  : %s\n", what);
    

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)