Ho un problema con questo esercizio, siccome sul pdf del professore non è spiegato (e le cose invece spiegate sono scritte malissimo...)

Definire la seguente funzione:
int *nuovoArrayInt(int n) che restituisca un array di interi di dimensione n;
Ho creato la funzione solo che, per vedere se avevo fatto correttamente, volevo provare ad assegnare dei valori all'array e stampare a video. Questo è il codice che ho scritto:

codice:
#include <stdio.h>
#include <stdlib.h>
int *nuovoArrayInt(int n);
int main(){
    int numero = 5, i=0, array;
    array = *nuovoArrayInt(numero);
    
    for(i=0;i<=numero;i++){
        array[i] = i;
        printf("%d \n", array[i]);
    }
}

int *nuovoArrayInt(int n){
    return (int*)malloc(n*sizeof(int));
}
L'errore che mi restituisce è [Error] invalid types 'int[int]' for array subscript per le righe 9 e 10

Grazie mille a chi mi aiuterà