¿Por qué C trata los parámetros de array como punteros?

En C, los parámetros de array se tratan como punteros principalmente a,

  • Para aumentar la eficiencia del código.
  • para ahorrar tiempo

Es ineficiente copiar los datos de la array en términos de memoria y tiempo; y la mayoría de las veces, cuando pasamos una array, nuestra intención es solo referirnos a la array que nos interesa, no crear una copia de la array.

C

// C Program to demonstrate that C treats array parameters
// as pointers
#include <stdio.h>
 
void findSum1(int arr[])
{
    int sum = 0;
    for (int i = 0; i < 5; i++)
        sum = sum + arr[i];
    printf("The sum of the array is: %d\n", sum);
}
 
void findSum2(int* arr)
{
    int sum = 0;
    for (int i = 0; i < 5; i++)
        sum = sum + arr[i];
    printf("\nThe sum of the array is: %d \n", sum);
}
 
// Driver code
int main()
{
    int arr[5] = { 1, 2, 3, 4, 5 };
 
    findSum1(arr);
    findSum2(arr);
    return 0;
}

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *