ユーザーが入力した IP アドレスを変換して、ビット単位の操作と、構造体に既に格納されているアドレスを実行できるようにしようとしています。しかし、私の問題は、IP アドレスが変換されると、出力が常に 255.255.255.255 になることです。たとえば、10.0.0.1 または 192.16.2.1 を入力すると、常に 255.255.255.255 が返されます。
どんな助けでも大歓迎です。ありがとう
{
struct sockaddr_in sa;
char ipinput[INET_ADDRSTRLEN];
fputs("Enter an IP Address: ", stdout);
fflush(stdout);
fgets(ipinput, sizeof ipinput, stdin);
inet_pton(AF_INET, ipinput, &(sa.sin_addr));
inet_ntop(AF_INET, &(sa.sin_addr), ipinput, INET_ADDRSTRLEN);
printf("IP Address = \%s\ \n", ipinput);
}