WinPcap里面遇到的一个问题
时间:10-02
整理:3721RD
点击:
这是在学习“保存数据包到堆文件”时遇到的,这是WinpPcap中文手册里的源程序。下面是截取的一段程序:
main(int argc, char **argv)
{
pcap_if_t *alldevs;
pcap_if_t *d;
int inum;
int i=0;
pcap_t *adhandle;
char errbuf[PCAP_ERRBUF_SIZE];
pcap_dumper_t *dumpfile;
/* 检查程序输入参数 */
if(argc != 2)
{
printf("usage: %s filename", argv[0]);
return -1;
}
我把程序运行到这里就出错了,这里的argc值明明是1,为什么会是2呢?
请知情的给我解答一下哈~
main(int argc, char **argv)
{
pcap_if_t *alldevs;
pcap_if_t *d;
int inum;
int i=0;
pcap_t *adhandle;
char errbuf[PCAP_ERRBUF_SIZE];
pcap_dumper_t *dumpfile;
/* 检查程序输入参数 */
if(argc != 2)
{
printf("usage: %s filename", argv[0]);
return -1;
}
我把程序运行到这里就出错了,这里的argc值明明是1,为什么会是2呢?
请知情的给我解答一下哈~
晕,就是2啊。
从printf看出你的命令个式是:
命令名 filename
argc是包括命令名的,所以你有2个参数,argc当然是2了。
你没发现你打印出来的argv[0]是命令名吗?
最后,这里是FPGA论坛。
