我的程序有以下警告,因爲這些我認爲是顯示了一個核心轉儲分段錯誤:「的getaddrinfo」時將整數指針沒有施放[默認啓用]
warning: passing argument 2 of ‘getaddrinfo’ makes pointer from integer without a cast [enabled by default]
rc = getaddrinfo(svrHost, svrPort, &hints, &res);
^
In file included from client6_main.c:16:0:
/usr/include/netdb.h:662:12: note: expected ‘const char * restrict’ but argument is of type ‘short unsigned int’
extern int getaddrinfo (const char *__restrict __name,
代碼段是:
rc = getaddrinfo(svrHost, svrPort, &hints, &res);
if(rc != 0){
printf("Host not found --> %s\n", gai_strerror(rc));
if (rc == EAI_SYSTEM)
perror("getaddrinfo() failed");
}
請指導
那麼,'svrPort'的類型是什麼? –
'getaddrinfo'的第二個參數必須是'const char *'類型。閱讀精美的手冊。 –