2—IPv6编程Linux篇,‘long un…

来源:互联网 发布:c语言的库函数 编辑:程序博客网 时间:2024/05/22 01:57

**************************************************

作者:flash胜龙 Email:liangzulin_001@163.com

**************************************************


网上的样板程序很多,例子也不少,大多都能正常通过编译,也不许要加什么奇怪的类库。linux下的编程优势在涉及IPv6的时候体现得淋漓尽致。而windows端就会出现各种各样莫名其妙的bug,尤其是使用非VS环境的时候那bug简直满天飞……谁叫VS那么卡我的机子性能又那么差呢?所以一直坚持用dev-cpp来编程。


回到Linux,样板代码地址找了2个:

  1. http://www.linuxidc.com/Linux/2008-10/16763.htm——Linux网络编程一步一步学-IPv6下网络编程步骤》

  2. http://www.tldp.org/HOWTO/Linux+IPv6-HOWTO/chapter-section-using-api.html——23.1. Programming usingC-API


编译后发现一些小bug,首先是:

警告: 格式‘%d’ expects argumentof type ‘int’, but argument 15 has type ‘long unsigned int’[-Wformat]

——这个问题可以通过把%d改成%lu解决。参考:http://stackoverflow.com/questions/3209909/how-to-printf-unsigned-long-in-c


之后就是一些缺乏类库的小失误,可以自己搜索加上。编译成功不难。接下来出现了个问题:1当中的ipv6客户端似乎只能链接本地的,不能链接windows端的,具体问题原因还有待查实。而2中的链接就比较顺利。具体地址问题头疼想了一晚上,查了些资料,发觉一开始以为是编程问题,结果最后是自己对ipv6地址格式不了解。


简单解决方案见:1--IPv6编程基础篇《为何输入对方地址链不上?为何win和linux不能互联?ipv6地址的斜杠和百分号是?》

0 0
原创粉丝点击