작성자 없음
작성자 정보가 삭제된 글입니다.
작성
·
193
0
안녕하세요 큰돌님~!
먼저 split 관련 질문부터..!
제공해주신 교안 보다가 C++은 split을 직접 구현해서 사용해야 한다 내용을 읽고나서 큰돌님 코드도 보고 구글링으로 다른 분들은 어떻게 사용하시는지 몇개 더 찾아봤는데 보통 공백이나 콤마 같은 구분자를 기준으로 split을 하는 코드인 것 같았어요.
혹시 자바스크립트에서 '안녕하세요'.split('') 사용했을 때 처럼 특정 구분자 없이 안,녕,하,세,요 와 같은 결과물이 나오도록 자르는 방법도 있는지 궁금합니당ㅎㅎ
두번째는 atoi 인데용, 문자열인 경우 0이 반환되는데 숫자 0과 문자열 "0"을 넣었을 때 동일한 값이 반환되더라구요.
0과 문자열 "0" 구분은 c++에서 어떤 방법을 사용할 수 있을까요?
질문 전에 먼저 검색해서 찾아봤을 때는 아스키코드를 사용하라고 나와있던데 이 방법 말고는 없을까요 ?
답변 1
1
제공해주신 교안 보다가 C++은 split을 직접 구현해서 사용해야 한다 내용을 읽고나서 큰돌님 코드도 보고 구글링으로 다른 분들은 어떻게 사용하시는지 몇개 더 찾아봤는데 보통 공백이나 콤마 같은 구분자를 기준으로 split을 하는 코드인 것 같았어요.
>> 제 코드가 제일 좋지 않나요? 하하
혹시 자바스크립트에서 '안녕하세요'.split('') 사용했을 때 처럼 특정 구분자 없이 안,녕,하,세,요 와 같은 결과물이 나오도록 자르는 방법도 있는지 궁금합니당ㅎㅎ
>> 음ㅎㅎ 그런 함수는 없구요. 그냥 문자열 순회하면서 배열에다가 넣으면 됩니다. for char : str) v.push_back(char)이렇게요.
두번째는 atoi 인데용, 문자열인 경우 0이 반환되는데 숫자 0과 문자열 "0"을 넣었을 때 동일한 값이 반환되더라구요.
0과 문자열 "0" 구분은 c++에서 어떤 방법을 사용할 수 있을까요?
질문 전에 먼저 검색해서 찾아봤을 때는 아스키코드를 사용하라고 나와있던데 이 방법 말고는 없을까요 ?
>> 해당 부분은 if문 분기처리로 해결해야 합니다. 그리고 0을 넣었을 때 숫자 0인지 문자열 0인지에 대한 판단 문제는 나올 가능성이 없습니다. 애초에 입력값을 숫자로 받을수도 있고 문자열로도 받을 수도 있는데 그렇게 문제를 내는 건 이상한 문제입니다.
감사합니다.
빠른 답변 감사합니다 💕 채고채공 'v'
교안에 있는 split 코드가 제일 이해하기 좋아서 큰돌님 코드로 split 함수 외웠어용 ㅎㅎㅎ