引数を指定してプログラムを実行しようとすると、セグメンテーション違反エラーが発生します。これを GDB で実行したところ、問題の行が見つかりました。次のようになります。
*dstip = (*optarg);
プロトタイプは次のとおりです。
char *dstip;
そして最後に、この行で呼び出されています:
char *filter = ("ip dest host %s", dstip);
今振り返ってみると、見た目がうまくいかないことに驚きはありません...率直に言って、問題はこれらの行を削除する(およびフィルターテキストを変更する)ことで完全に解決されます。ただし、エラーメッセージフィルターに表示されるように入力されているIPv4アドレスが必要であり、ポインターでは役に立たず、さまざまなことを試してみましたが、うまくいきません。つまり、私は得るだけwarning initialization makes pointer from integer
です...どうすればいいですか?