char num, asc;
printf("0 ~ 127까지 정수 중 하나를 입력하세요 : ");
scanf_s("%d", &num);
printf("입력하신 정수 %d는 아스키 코드 %c 입니다.\n", num, num);
printf("문자 하나를 입력하세요 : ");
scanf_s("%c", &asc);
printf("입력하신 아스키 코드 %c는 정수 %d 입니다.\n", asc, asc);
return 0;
위에 정수 입력받아서 아스키 코드 나오는건 되는데
그거 끝나자마자 바로 비쥬얼스튜디오 오류뜨면서 멈춰버리네요
뭐가 문제죠?
num 을 int 형으로 선언하거나 형변환 해주세요
해도 위에 3개만 제대로 뜨고 밑에꺼는 문자 입력도 안했는데 알아서 뭔가 입력됐는지 10 뜨고 끝나네요 ㅜㅠ
%d는 int 형을 받아옵니다. num은 char형이므로.. 에러
scanf_s("%d", &num);에서 num(1byte 저장 공간)에 값을 받아올 때 int 형 값(4byte?)을 받아오게 되어 할당된 num의 저장공간을 오버하게 됩니다. %c로 받거나 num을 int 형으로 변경 바랍니다.