[問題] BSD Socket函式第二/三個參數的意義為何
遇到的問題: (題意請描述清楚)
socket函式中我有看到有人這樣寫
int socket = 0;
sock = socket(AF_INET, SOCK_STREAM, 0);
^^^^^
這裡
但也有人這樣寫
struct protoent*
ptr_protoent = 0;
ptr_protoent = getprotobyname("tcp");
sock = socket(AF_INET, SOCK_STREAM, ptr_protoent->p_proto);
我的問題是:差別在哪?
我能理解socket本身不止是給TCP/IP用的,但我不能理解明明在第二個參數已經寫好了
為甚麼還要再寫一次?為甚麼寫0也行?
man socket我每個字都看得懂,但完全不知道他在講甚麼。可不可以用簡單一點的說法
告訴我?
以上,還請各位先進不吝指教.....
開發平台: (例: VC++ or gcc/g++ or Dev-C++, Windows or Linux)
BSD socket(FreeBSD 8-release)
--
「老頭滾動條」
猜一遊戲名稱
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.134.115.251
※ 編輯: doomleika 來自: 140.134.115.251 (03/22 21:22)
→
03/22 21:31, , 1F
03/22 21:31, 1F
→
03/22 23:25, , 2F
03/22 23:25, 2F
推
03/22 23:30, , 3F
03/22 23:30, 3F
→
03/22 23:43, , 4F
03/22 23:43, 4F
→
03/22 23:43, , 5F
03/22 23:43, 5F
→
03/22 23:45, , 6F
03/22 23:45, 6F
→
03/22 23:48, , 7F
03/22 23:48, 7F
→
03/22 23:49, , 8F
03/22 23:49, 8F
推
03/23 02:04, , 9F
03/23 02:04, 9F
→
03/23 04:05, , 10F
03/23 04:05, 10F
→
03/23 04:05, , 11F
03/23 04:05, 11F
討論串 (同標題文章)