atoi(const char * str)
:char형의 문자열을 받아 int형으로 변환하는 역할을 합니다.
<사용에 필요한 헤더파일>
.c : stdlib.h
.cpp : cstdlib
c/c++ 개발을 조금만 해봤다면 많이 사용해봤을 atoi() 함수입니다.
개발에 앞서 개발된 함수들을 사용해보는것도 중요하지만 그걸 구현해봄으로써 원리를 이해하고
코딩실력을 키울수 있다고 생각합니다. 덤으로 요즘 면접에서 종종 나온다고 하니ㅎㅎ
<구현>
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 | #include <stdio.h> #include <stdlib.h> #include <assert.h> int _atoi(char*); int main() { char *a = new char[10]; printf("문자열:"); scanf_s("%s", a, 10); int b = _atoi(a); printf("정수형:%d\n", b); } int _atoi(char* cdata) { int sign = 1, data = 0; if (*cdata == '\n') return 0; if (*cdata == '-') sign = -1; while (*cdata) { if (*cdata >= '0' && *cdata <= '9') { data = data * 10 + *cdata - '0'; } else { assert(0); } cdata++; } return data * sign; } | cs |
<결과>