열혈강의 책 잇으신분둘 질문이요!!
파라
2023.04.01
제가 공부를 하다가 막혀서 그렇습니다 너무 궁금한데요 페이지 475 연습문제 21-2에 2번문제 답지를 봣는데요 478페이지 23번째 줄 보시면 이프문에서 if(strcmp(str1,str3)==1) 이라는 문장이에요 뜻은 str1과str3을 비교햇을때 str1이크면 이프문이 참이되는데여 왜 하필 그값이 1이죠? 저는 책에서 배울때 strcmp가 양수가 나온다고 배웟는데요 양수요 근대 그게 무조건 1인가여?
-
큰깃
ㅇ아 정말 감사합니다 그럼 책이 오류인가요?
-
모드니
0이 정확합니다.
-
나래
감사합니다 많은도움 됫습니다
-
이퓨리한은지
hello
hellw
이 두 문자열을 비교한다면
하나씩 앞에서부터 아스키코드 값으로 비교해나가면서 두 문자의 아스키코드의 차이를 판단합니다.
같은 문자라면 아스키코드가 같기 때문에 0 이 나오겠죠.
strcmp 가 문자열이 같을 경우에 0 이 나오는 것은 이런 원리 때문입니다.
o 와 w 를 비교할 때 아스키코드 차이를 판단하니 0 이 아니기 때문에 다르다는 것을 알 수 있고
그 차이를 리턴하게됩니다.
즉 strcmp 의 리턴 값은 처음으로 나오는 -
찬들
제가 스맛폰으로 입력하는거라 ㅠㅠ 근대 계산식을좀 알수 잇을가요?
-
세움
무조건 1이 나오지는 않습니다. 그렇다고 랜덤하게 나오지도 않지요,, (계산식이 있습니다.)
전체 소스를 보고싶네요.