Когда я использовал calloc для динамического размещения 1d-массива, я должен получить то же значение или другое значение?
Я видел программу моего друга. Когда он использовал calloc и заполнил 1d массив случайным геном. и скомпилировать их программу, он получает то же значение массива.
Вот мой код:
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
srand(time(NULL));
int *n, s=10;
one=(int*) calloc(s,sizeof(int));
for(m=0;m<s;m++)
{
o[m] =(rand()%20);
printf("%d\n",o[m]);
}
free(one);
Выходы:
Первый забег:
Второй прогон:
1 ответ
Решение
Вы назначаете на o[m]
но распечатывать one[m]
,
Вам также нужно позвонить srand
в начале вашей программы для инициализации случайной последовательности.