널 캐릭터도 0이야 자료형이 char인거지 그리고 C의 제어문들은 부울형을 따로 받는게 아니고 0이면 false고 0이 아니면 true임
익명(121.151)2022-01-10 11:25
답글
그냥 0 임? 아스키코드의 0 이 아니고??
익명(223.38)2022-01-10 11:28
답글
그거는 널이 아니고 '0'임
익명(121.151)2022-01-10 11:29
답글
아 이해했음 고마워
익명(223.38)2022-01-10 11:30
조건식은 자동으로 boolean으로 형변횐하지않음?
익명(14.55)2022-01-10 12:10
답글
아직 boolean이 먼지 모름...
익명(223.38)2022-01-10 12:12
니 입으로 아래 코드가 *str++ 이라고 했는데 왜모르노? char *str = "abc" 인 상태이면 abc 알파벳 하나하나가 배열에 들어있는 상태나 마찬가지라서 str[] = "abc" 랑 똑같은 상태인거임. 참고로 c에서 문자열은 "abc"라고 해놓으면 "abc\0"이라는 상태로 저장됨. 그래서 조건식에 *str이라고 하고 밑에 *str++이라고 하면 처음에는 str[0]인 a, 다음에는 str[1]인 b, str[2]인 c가 나오고 그것들은 부울값으로 모두 true 이니까 참이고 한번더 *str을 증가시키면 마지막으로 있는 \0가 나오는데 이건 부울값으로 false가 나옴 그래서 while문이 멈추는거임 ㅇㅋ?
익명(61.85)2022-01-10 12:39
답글
ㅇㅇ 이해했음 나는 nul 문자랑 '0'이랑 같은거라고 생각해서 조건문에서 왜 0이 뜬다 하는 거지? 조건문에서 0 과 아스키코드 0은 다른거 아닌가 이렇게 생각했는데 아스키코드표 다시 보고 이해했음 ㄱㅅㄱㅅ
내가볼때 while문 전체를 올려야할듯
밑에는 *str++ 임
널 캐릭터도 0이야 자료형이 char인거지 그리고 C의 제어문들은 부울형을 따로 받는게 아니고 0이면 false고 0이 아니면 true임
그냥 0 임? 아스키코드의 0 이 아니고??
그거는 널이 아니고 '0'임
아 이해했음 고마워
조건식은 자동으로 boolean으로 형변횐하지않음?
아직 boolean이 먼지 모름...
니 입으로 아래 코드가 *str++ 이라고 했는데 왜모르노? char *str = "abc" 인 상태이면 abc 알파벳 하나하나가 배열에 들어있는 상태나 마찬가지라서 str[] = "abc" 랑 똑같은 상태인거임. 참고로 c에서 문자열은 "abc"라고 해놓으면 "abc\0"이라는 상태로 저장됨. 그래서 조건식에 *str이라고 하고 밑에 *str++이라고 하면 처음에는 str[0]인 a, 다음에는 str[1]인 b, str[2]인 c가 나오고 그것들은 부울값으로 모두 true 이니까 참이고 한번더 *str을 증가시키면 마지막으로 있는 \0가 나오는데 이건 부울값으로 false가 나옴 그래서 while문이 멈추는거임 ㅇㅋ?
ㅇㅇ 이해했음 나는 nul 문자랑 '0'이랑 같은거라고 생각해서 조건문에서 왜 0이 뜬다 하는 거지? 조건문에서 0 과 아스키코드 0은 다른거 아닌가 이렇게 생각했는데 아스키코드표 다시 보고 이해했음 ㄱㅅㄱㅅ