質問編集履歴
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
         | 
