converting

Hello

Can i be given an example of how to convert a string to decimal.

ie.

char ip;

ip = 10.10.10.10

which should give me the decimal equivilant after conversion 168430090

thank you
codey-06Asked:
Who is Participating?
 
jkrCommented:
In that very case, 'inet_addr()' (http://pubs.opengroup.org/onlinepubs/007908799/xns/inet_addr.html) is your friend. I.e.

char* ip;
unsigned long addr;

ip = "10.10.10.10";

addr = inet_addr(ip);

Open in new window

0
 
phoffricCommented:
168430090 = 0x0A0A0A0A
breaking that down into bytes: 0x0A 0x0A 0x0A 0x0A ~ 10 10 10 10
So, you need to parse out the 4 decimal values.
One way is to use strtok to do this.
      http://www.cplusplus.com/reference/clibrary/cstring/strtok/
and then use atoi to convert to decimal
      http://www.cplusplus.com/reference/clibrary/cstdlib/atoi/
Now that you have the 4 integer values, you need to start shifting (by 8 bits at a time, using << operator) and cumulative adding on each value to come up with the 32-bit integer. This value can then be displayed either as unsigned decimal or hex.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.