Когда я использовал 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 в начале вашей программы для инициализации случайной последовательности.

Другие вопросы по тегам