请问,怎样用C获得ping的返回值?
我在程序中用ping确定网络是否正常,找了一些ping的源码,都是很长而没一个能编译通过的,所以现在直接调用ping命令   
 我在程序中system( "ping   www.csdn   -c   1   > ping.txt "); 
 好像没有东西写入ping.txt? 
 我在shell中直接ping   www.csdn.net   > ping.txt 
 也没有东西写进去?   
 这是怎么回事?   
 另:确定网络是否正常,最好是用什么方法呢?改写ping源码吗?     
------解决方案--------------------ping就是发ICMP包,你可以以此确认网络是否通,也可以简单的打开socket来知道网络是否通。对于ping,有很多简单的例子,比如《UNIX网络编程(第一卷)》就有ping的例子,此书是UNIX网络编程的圣经,有电子版,很好找。   
 如楼上各位所说,ping的结果能写到文件,你最好确认一下。
------解决方案--------------------int ret = system( "ping xxx "); 
 if (WEXITSTATUS( ret ) == 0) 
 OK 
 else 
 ERROR