//int my_num = 0;
//_samp_atoi(\"12345\", &my_num);

#include <stdio.h>

int _samp_atoi(char *str, unsigned int *res)
{
 int i, j; //temp
 unsigned int tmp = 0;
 unsigned int strsize = strlen(str);

 if(0 == strsize) return -1;

 *res = 0; //initialize

 for(i = strsize; i > 0; --i)
 {
  tmp = (unsigned int)(str[strsize - i]) - (unsigned int)(\'0\');

  for(j = 1; j < i; j++)
  {
   tmp *= 10;
  }
    printf(\"%d\\r\\n\", tmp);

  *res += tmp;

    printf(\"%d\\r\\n\", *res);
 }

 return 0;
}

int main(void)
{
    int num = 0;
    _samp_atoi(\"12345\", &num);

    printf(\"output result is %d\\r\\n\", num);

    return 0;
}

http://codepad.org/R9e6E06R 

게다가, 손 코딩도 아니고, 교정도 수십번.. 엉엉..

이너루프 이쁘게 바꿀수 있는 방법 없나요? 비트가지고 이리저리 꼬면 이뻐질거 같긴 한데.. 제 능력 밖;;T^T