code:
Code:
#include <stdio.h>
#include <stdlib.h>
int
main()
{
int *my_array;
int key;
my_array = malloc(sizeof(int) * 10);
for(key = 0; key < 20; key++)
{
my_array[key] = key;
printf("key %i:\t%i\n",key,my_array[key]);
}
return 0;
}
terminal:
Code:
grytskiv@ZXDSL831II:~/memory$ gcc -ansi sigmental_memory.c -o sigmental_memory && ./sigmental_memory
key 0: 0
key 1: 1
key 2: 2
key 3: 3
key 4: 4
key 5: 5
key 6: 6
key 7: 7
key 8: 8
key 9: 9
key 10: 10
key 11: 11
key 12: 12
key 13: 13
key 14: 14
key 15: 15
key 16: 16
key 17: 17
key 18: 18
key 19: 19
grytskiv@ZXDSL831II:~/memory$
AND SECOND VARIANT CODE:
Code:
#include <stdio.h>
#include <stdlib.h>
int
main()
{
int my_array[10];
int key;
/* my_array = malloc(sizeof(int) * 10); */
for(key = 0; key < 20; key++)
{
my_array[key] = key;
printf("key %i:\t%i\n",key,my_array[key]);
}
return 0;
}
terminal:
Code:
grytskiv@ZXDSL831II:~/memory$ gcc -ansi sigmental_memory.c -o sigmental_memory && ./sigmental_memory
key 0: 0
key 1: 1
key 2: 2
key 3: 3
key 4: 4
key 5: 5
key 6: 6
key 7: 7
key 8: 8
key 9: 9
key 10: 10
key 11: 11
key 12: 12
key 13: 13
key 14: 14
key 15: 15
key 16: 16
key 17: 17
key 18: 18
key 19: 19
segmental error
grytskiv@ZXDSL831II:~/memory$
Why in first variant code I don't recive "segmental error"??
And why in second variant my program execute full code? My program assign data for not existing element array (out range defined elements for my_array)