예를 들어서
char bae[90]; // 선언 후,
scanf("%s",bae); // 입력 받아서 90자 크기 이상이면 에러메세지 뜨게 하는건데,
진짜 기초적인 것 같은데 왜 안풀릴까
scnaf("%89s", bae)로 하면 90자리 넘어도 오류 발생 안하고 알아서 90자리만 읽어요.
전 오류메세지를 출력하고 싶은데 감이 안오네요.
int cnt = sizeof(bae)/sizeof(bae[0]);
for(int i =0; i<cnt; i++)
{
if(cnt>90)
{
printf("에러메세지");
}
}
이런식으로하면 될 줄 알았는데
저 사이즈가 예를 들어서 3글자 입력받으면 cnt가 3인줄알았는데
아예 90이여서 응용을 못하겠네요
부탁드립니다!
char bae[90]; // 선언 후,
scanf("%s",bae); // 입력 받아서 90자 크기 이상이면 에러메세지 뜨게 하는건데,
진짜 기초적인 것 같은데 왜 안풀릴까
scnaf("%89s", bae)로 하면 90자리 넘어도 오류 발생 안하고 알아서 90자리만 읽어요.
전 오류메세지를 출력하고 싶은데 감이 안오네요.
int cnt = sizeof(bae)/sizeof(bae[0]);
for(int i =0; i<cnt; i++)
{
if(cnt>90)
{
printf("에러메세지");
}
}
이런식으로하면 될 줄 알았는데
저 사이즈가 예를 들어서 3글자 입력받으면 cnt가 3인줄알았는데
아예 90이여서 응용을 못하겠네요
부탁드립니다!
sizeof (char) [from Lumia 920]
그냥 %c로 한 글자씩 받아 char[]에 저장하고 count++해서 count가 90 이상일 경우 오류메시지를 출력하면 될 것 같은데?
카운트를 해야지 왜 전체 크기를 구해
애초에 90자 넘으면 이승하직 아닌가?
그리고 안되는 이유는 배열크기가 덩해져있는데 어떻게 지정을 함. [from Lumia 920]
포인터에 넣든가. [from Lumia 920]
아..... 감사합니다.... 더 열심히해야겠네요...
ㅋㅋ 너 인하대지?