質問編集履歴
9
タイトルに言語名を書いてわかりやすくした
title
CHANGED
@@ -1,1 +1,1 @@
|
|
1
|
-
特定の条件のときにrealloc関数でエラー(invalid pointer)が出て強制終了しまう
|
1
|
+
C言語 特定の条件のときにrealloc関数でエラー(invalid pointer)が出て強制終了しまう
|
body
CHANGED
File without changes
|
8
エラーの内容を一部抜粋してタイトルに入れた
title
CHANGED
@@ -1,1 +1,1 @@
|
|
1
|
-
特定の条件のときにrealloc関数で
|
1
|
+
特定の条件のときにrealloc関数でエラー(invalid pointer)が出て強制終了しまう
|
body
CHANGED
File without changes
|
7
脱字の修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
下記のC言語のプログラムをgccでコンパイルして実行すると、最初の``printf``が実行される前に
|
1
|
+
下記のC言語のプログラムをgccでコンパイルして実行すると、最初の``printf関数``が実行される前に
|
2
2
|
``*** Error in `./a.out': realloc(): invalid pointer: 0x00007ffcd822789f ***``
|
3
3
|
が行頭の長いエラーメッセージのようなものが出て強制終了してしまいます。
|
4
4
|
```C
|
6
条件をくわしくした
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
下記のC言語のプログラムをgccでコンパイルして実行すると、
|
1
|
+
下記のC言語のプログラムをgccでコンパイルして実行すると、最初の``printf``が実行される前に
|
2
2
|
``*** Error in `./a.out': realloc(): invalid pointer: 0x00007ffcd822789f ***``
|
3
3
|
が行頭の長いエラーメッセージのようなものが出て強制終了してしまいます。
|
4
4
|
```C
|
5
文章をわかりやすくした
title
CHANGED
File without changes
|
body
CHANGED
@@ -29,7 +29,7 @@
|
|
29
29
|
return 0;
|
30
30
|
}
|
31
31
|
```
|
32
|
-
realloc関数の部分は同じなのに、このプログラムだとエラーはで
|
32
|
+
realloc関数の部分は同じなのに、このプログラムだとエラーは出ずに実行できる。
|
33
33
|
```C
|
34
34
|
#include <stdio.h>
|
35
35
|
#include <stdlib.h>
|
4
タイプミスの修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -29,7 +29,7 @@
|
|
29
29
|
return 0;
|
30
30
|
}
|
31
31
|
```
|
32
|
-
|
32
|
+
realloc関数の部分は同じなのに、このプログラムだとエラーはでない。
|
33
33
|
```C
|
34
34
|
#include <stdio.h>
|
35
35
|
#include <stdlib.h>
|
3
下記が2度出てきてくどいので2度目の方を「この」に変更
title
CHANGED
File without changes
|
body
CHANGED
@@ -29,7 +29,7 @@
|
|
29
29
|
return 0;
|
30
30
|
}
|
31
31
|
```
|
32
|
-
relloc関数の部分は同じなのに、
|
32
|
+
relloc関数の部分は同じなのに、このプログラムだとエラーはでない。
|
33
33
|
```C
|
34
34
|
#include <stdio.h>
|
35
35
|
#include <stdlib.h>
|
2
エラーの条件を詳しくした
title
CHANGED
@@ -1,1 +1,1 @@
|
|
1
|
-
realloc関数でメモリを確保する部分でエラーが出て強制終了しまう
|
1
|
+
特定の条件のときにrealloc関数でメモリを確保する部分でエラーが出て強制終了しまう
|
body
CHANGED
@@ -28,4 +28,23 @@
|
|
28
28
|
}
|
29
29
|
return 0;
|
30
30
|
}
|
31
|
+
```
|
32
|
+
relloc関数の部分は同じなのに、下記のプログラムだとエラーはでない。
|
33
|
+
```C
|
34
|
+
#include <stdio.h>
|
35
|
+
#include <stdlib.h>
|
36
|
+
|
37
|
+
typedef struct{
|
38
|
+
char name[64];
|
39
|
+
int age;
|
40
|
+
int sex;
|
41
|
+
} person;
|
42
|
+
|
43
|
+
int main(void){
|
44
|
+
int count = 1;
|
45
|
+
person *persons;
|
46
|
+
persons = (person*)realloc(persons, sizeof(person) * count);
|
47
|
+
|
48
|
+
return 0;
|
49
|
+
}
|
31
50
|
```
|
1
タイトルに情報を追加
title
CHANGED
@@ -1,1 +1,1 @@
|
|
1
|
-
realloc関数でメモリを確保する部分でエラーが出てしまう
|
1
|
+
realloc関数でメモリを確保する部分でエラーが出て強制終了しまう
|
body
CHANGED
File without changes
|