[risolto]Contare il numero di elementi di un array passata per riferimento

di Anonimizzato21471 il
7 risposte

void fast_sort( int64_t *elements )
{
    int64_t length = sizeof( elements ) / sizeof( *elements );

    printf("%ld", length);
}

int32_t main( void )
{
    int64_t array1[] = {3, 2};
    int64_t array2[] = {3, 2, 1};
    int64_t array3[] = {4, 3, 2, 1};
    int64_t array4[] = {5, 4, 3, 2, 1};

    fast_sort(array1);
    fast_sort(array2);
    fast_sort(array3);
    fast_sort(array4);

    return 1;
}
Perchè stampa sempre 1?

7 Risposte

  • Risolto: non posso, o passo il totale come seconda variabile o ciclo il puntatore;
  • Come ti ho detto nell'altro forum, puoi solo passare il numero di elementi.
  • Si, grazie
  • OT
    Il crossposting non è una pratica ben vista
    /OT
  • oregon ha scritto:


    OT
    Il crossposting non è una pratica ben vista
    /OT
    Conosco la tua posizione a riguardo, ne hai discusso con altri utenti.

    Tendo a postare le risposte di altri utenti da forum a forum () riportando anche i crediti per tenere il topic sempre allo stesso livello, la dove è possibile.
  • Guarda che qui è vietato. I tuoi thread potrebbero essere chiusi.
  • Eviterò di fare crossposting su questo forum allora, grazie per l'informazione.
Devi accedere o registrarti per scrivere nel forum
7 risposte