2.2.2 小试牛刀--模拟实现Windows的UDP程序(12)
(10) 主函数
主函数main()实现Winsock的初始化、广播与多播的选择以及发送者与接收者身份选择等功能。具体实现代码如下:
- /*主函数*/
- int main(int argc, char **argv)
- {
- WSADATA wsd;
- initial();
- GetArgments(argc, argv);
- /*初始化Winsock*/
- if (WSAStartup(MAKEWORD(2, 2), &wsd) != 0)
- {
- printf("WSAStartup() failed\n");
- return -1;
- }
- if(broadFlag) /*如果是执行广播程序*/
- {
- /*以发送者身份发送消息*/
- if(broadSendFlag)
- {
- broadcastSend();
- return 0;
- }
- /*以接收者身份接收消息*/
- else
- {
- broadcastRec();
- return 0;
- }
- }
- if(multiFlag) /*如果是执行多播程序*/
- {
- /*以发送者身份发送消息*/
- if(multiSendFlag)
- {
- multicastSend();
- return 0;
- }
- /*以接收者身份接收消息*/
- else
- {
- multicastRec();
- return 0;
- }
- }
- return 0;
- }
到此为止,整个实例设计完毕,执行后的效果如图2-15所示。
|
| (点击查看大图)图2-15 执行效果 |