728x90
728x90

stoi 2

C++에서 문자열을 숫자로, 숫자를 문자열로

문자열 처리, 특히 숫자를 문자열로 다루어야 하는 문제들을 접하면 C언어를 주로 했던 사람들은 바로 떠올리는 게 atoi나 itoa다. 물론, 이를 몰라서 아스키 코드를 바탕으로 한 문자열 처리를 하겠지만(필자가 그랬다.), 어쨌든 이 두 함수를 알고 있는 사람들은 C++에서도 cstdlib.h 헤더 파일을 추가해주면 사용이 가능하다. 문자열을 숫자로 변환시켜주는 atoi는 표준 함수라서 크게 문제되진 않지만, 함수 자체가 가지고 있는 문제점이 있어서 더 좋은 대안이 있다면 사용에 주의를 기울여야 한다. 보통은 기본적인 수준의 문자열 처리 문제들을 푸는 상황에서는 문제가 없다. 문제는, 숫자를 문자열로 변환 시키는 itoa다. 표준이 아니라서 비표준 함수를 처리해주지 못하는 컴파일러를 만나면 컴파일 에러..

백준] 2864 - 5와 6의 차이

시간 제한 : 1초메모리 제한 : 128MB 입력첫째 줄에 두 정수 A와 B가 주어진다. (1 a >> b; alen = a.length(), blen = b.length(); for (int i = 0; i < alen; i++) if (a[i] == '5') a[i] = '6'; for (int i = 0; i < blen; i++) if (b[i] == '5') b[i] = '6'; s1 = stoi(a) + stoi(b); for (int i = 0; i < alen; i++) if (a[i] == '6') a[i] = '5'; for (int i = 0; i < blen; i++) if (b[i] == '6') b[i] = '5'; s2 = stoi(a) + stoi(b); cout

728x90