Heim >Backend-Entwicklung >C++ >Warum behandelt C Array-Parameter als Zeiger?

Warum behandelt C Array-Parameter als Zeiger?

王林
王林nach vorne
2023-09-08 13:17:021501Durchsuche

Warum behandelt C Array-Parameter als Zeiger?

C behandelt Array-Parameter als Zeiger, da dies zeitsparender und effizienter ist. Obwohl wir die Adresse jedes Elements des Arrays als Parameter an die Funktion übergeben könnten, wäre dies zeitaufwändiger. Daher ist es besser, die Basisadresse des ersten Elements an die Funktion zu übergeben, zum Beispiel:

void fun(int a[]) {
…
}
void fun(int *a) { //more efficient.
…..
}

Hier ist ein Beispielcode in C:

#include

void display1(int a[]) //printing the array content
{
   int i;
   printf("</p><p>Current content of the array is: </p><p>");
   for(i = 0; i < 5; i++)
      printf(" %d",a[i]);
}

void display2(int *a) //printing the array content
{
   int i;
   printf("</p><p>Current content of the array is: </p><p>");
   for(i = 0; i < 5; i++)
      printf(" %d",*(a+i));
}
int main()
{
   int a[5] = {4, 2, 7, 9, 6}; //initialization of array elements

   display1(a);
   display2(a);
   return 0;
}

OUTPUT

Current content of the array is:
4 2 7 9 6
Current content of the array is:
4 2 7 9 6

Das obige ist der detaillierte Inhalt vonWarum behandelt C Array-Parameter als Zeiger?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen