回答編集履歴

2

.

2022/06/13 06:52

投稿

int32_t
int32_t

スコア21085

test CHANGED
@@ -4,7 +4,8 @@
4
4
  fgets(title, len - 1, fp); //読み込んでタイトルに格納
5
5
  ```
6
6
 
7
- ここが間違ってますね。このコードの直前では、「`line` の行の直後」が現在のファイル位置になってます。`SEEK_CUR` で移動するなら、「`(p1 - line)` - `line` の長さ」を `fseek()` にわたす必要がありま
7
+ ここが間違ってますね。このコードの直前では、「`line` の行の直後」が現在のファイル位置になってます。直前は `</title>\n` などになっているでしょうから、`b`は関係ありません
8
+ `SEEK_CUR` で移動するなら、「`(p1 - line)` - `line` の長さ」を `fseek()` にわたす必要があります。
8
9
  `SEEK_SET` で移動するなら、「`p + (p1 - line)`」でしょうか。
9
10
 
10
11
  `fgets()` の第2引数は `len + 1` にします。

1

.

2022/06/13 06:50

投稿

int32_t
int32_t

スコア21085

test CHANGED
@@ -7,6 +7,8 @@
7
7
  ここが間違ってますね。このコードの直前では、「`line` の行の直後」が現在のファイル位置になってます。`SEEK_CUR` で移動するなら、「`(p1 - line)` - `line` の長さ」を `fseek()` にわたす必要があります。
8
8
  `SEEK_SET` で移動するなら、「`p + (p1 - line)`」でしょうか。
9
9
 
10
+ `fgets()` の第2引数は `len + 1` にします。
11
+
10
12
  ```c
11
13
  // memcpy(title, p1, len);//これをやるべきなのか?参考までに
12
14
  // title[len] = '\0'; // 終端記号追加(いるのか不安)