jinhan814   3년 전

직접 'A' <= i && i <= 'Z'랑 'a' <= i && i <= 'z'로 대소문자 여부를 확인할 때는 AC가 뜨는데 c++의 isalpha함수를 사용한 코드는 계속 wa가 뜹니다.

isalpha 함수는 대문자의 경우 1을, 소문자의 경우 2를 리턴하는 것으로 알고 있는데 혹시 어디서 틀리는지 알 수 있을까요??

Green55   3년 전

C++ 표준에서 isalpha는 알파벳일 경우 0이 아닌 어떠한 수도 리턴 될 수 있도록 되어있으며,

assert로 확인해본 결과 실제로 채점에 사용되는 컴파일러에서도 소문자면 1, 대문자면 2를 리턴하는 것이 아닌 것 같습니다.

jinhan814   3년 전

https://ideone.com/IfT4WI


visual studio에서 돌렸을 때는 대문자일 때 1, 소문자일 때 2가 나와서 왜 안되나 싶었는데 다른 컴파일러로 돌려보니까 대소문자 구분 없이 1024가 리턴되는군요.. 배워갑니다 ㅎㅎ

댓글을 작성하려면 로그인해야 합니다.