0
返回值我有這樣的代碼是工作的罰款:打印從INET_ATON()函數
#include <arpa/inet.h>
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
struct in_addr addr;
if (argc != 2) {
fprintf(stderr, "%s <dotted-address>\n", argv[0]);
exit(EXIT_FAILURE);
}
if (inet_aton(argv[1], &addr) == 0) {
perror("inet_aton");
exit(EXIT_FAILURE);
}
printf("%s\n", inet_ntoa(addr));
exit(EXIT_SUCCESS);
}
我想實現的是打印inet_aton()
函數的值。函數的描述說它返回一個數字,但是當我嘗試打印它時,它說「不能從地址結構轉換爲十進制」。
'addr.s_addr'應該是一個無符號整數。見例如http://man7.org/linux/man-pages/man7/ip.7.html – brm 2015-04-05 15:22:49
*你在哪裏得到錯誤?你可以編輯你的問題來包含更多的細節(比如它是編譯器錯誤還是運行時錯誤,*實際*和*完整*錯誤)。 – 2015-04-05 15:22:59
這是一個編譯器錯誤。 – 2015-04-05 15:25:33