Sure, there are lots of things wrong with it.

> void main()
http://c-faq.com/ansi/voidmain.html

> #include<conio.h>
This is a non-standard header file, so you should avoid using unless necessary.
It is also obsolete as well, as no new compiler will ever have such a thing. Even compilers like dev-c++ which do include it do only for backward compatibility.

> union ipadd
A union with only one member is kinda pointless, so it looks just like a struct.

> d=d+(*(p+i)-48)*pow(10,po);
You know, this is exactly what strtol() does, so why not use it?
In fact using strtol() means you can avoid the messy strtok() function as well, which as a side-effect trashes the input string.