Преобразование void в int C++
Написание программы с использованием теории Sieve of Tratosthenes, и я не могу скрыть void в int.
Вот мой код:
#include <stdio.h>
#include <stdlib.h>
#define limit 1000000 /*size of integers array*/
void *malloc(size_t size)
int main(){
unsigned long long int i, j;
int *primes;
int z = 1;
int times;
int counter;
printf_s("Enter the limit: ");
scanf_s("%d\n", ×);
do (counter++) {
primes = malloc(sizeof(int) * limit);
for (i = 2; i < limit; i++)
primes[i] = 1;
for (i = 2; i < limit; i++)
if (primes[i])
for (j = i; i * j < limit; j++)
primes[i * j] = 0;
printf("\nPrime numbers in range 1 to 100 are: \n");
for (i = 2; i < limit; i++)
if (primes[i])
printf("%d\n", i);
} while (counter <= times)
return 0;
}
Там происходит ошибка в этой строке:
primes = malloc(sizeof(int) * limit);
Может кто-то указать мне, что я делаю неправильно? Я не использую правильную библиотеку или неправильно закодирована функция с "malloc()"? Этот код в компиляторе C++, но я провел исследование и увидел, что он может работать в программе, скомпилированной на C. Спасибо