ここで少し問題がありますmemcpy()
これを書くと
char ipA[15], ipB[15];
size_t b = 15;
memcpy(ipA,line+15,b);
b
15番目の要素から始まる配列からバイトをコピーしますline
(これは私が欲しいものです)
memcpy(ipB,line+31,b);
b
これは、31 番目の要素から始まる行からバイトをコピーしますが、前のコマンドの結果、つまりipA
.
なんで?ipB
サイズは 15 であるため、他のものをコピーするのに十分なスペースはありません。ここで何が起こっているのですか?
- の結果
ipA
は192.168.123.123
ipB
の結果205.123.123.122 192.168.123.123
どこが間違っていますか?私は実際にCのメモリ割り当てについてあまり知りません。