Loading...
Engaged employer
How would you implement int atoi ( const char * str );
Anonymous
I parsed the string from left to right, multiplying the temp int by 10 for each char traversed.
You need to subtract the ascii value of zero to get the integer value of the char before multiplying by 10.
#include #include unsigned int my_atoi(const char* str) { int num = 0; while (*str) { num *= 10; num += (*str++ - '0'); } return num; } int main(int argc, char* argv[]) { printf("atoi(%s)=%d\n",argv[1], my_atoi(argv[1]) ); return 0; }
Check out your Company Bowl for anonymous work chats.
Get actionable career advice tailored to you by joining more bowls.
Stay ahead in opportunities and insider tips by following your dream companies.
Get personalised job recommendations and updates by starting your searches.