Maison  >  Article  >  développement back-end  >  Comment obtenir la longueur d'un tableau en langage C

Comment obtenir la longueur d'un tableau en langage C

hzc
hzcoriginal
2020-07-03 13:32:275908parcourir

En langage C, après avoir défini un tableau, vous pouvez utiliser la commande sizeof pour obtenir la longueur du tableau [le nombre d'éléments qu'il peut accueillir]. Il n'est pas possible d'obtenir la longueur du tableau par]. passer le paramètre de nom de tableau à la sous-fonction.

Comment obtenir la longueur d'un tableau en langage C

En langage C, après avoir défini un tableau, vous pouvez utiliser la commande sizeof pour obtenir la longueur du tableau (le nombre d'éléments qu'il peut accueillir)

Par exemple :

{
int data[4];
int length;
length=sizeof(data)/sizeof(data[0]);  //数组占内存总空间,除以单个元素占内存空间大小
printf("length of data[4]=%d", length ); //输出length of data[4]=4
}

Il n'est pas possible d'obtenir la longueur du tableau en passant le paramètre de nom du tableau à la sous-fonction. Par exemple :

int getLength(int[] a){
    int length;
    length=sizeof(a)/sizeof(a[0]); //这样是错误的,得到的结果永远是1
    return length;
}

因为,a是函数参数,到了本函数中,a只是一个指针(地址,系统在本函数运行时,是不知道a所表示的地址有多大的数据存储空间,
这里只是告诉函数:一个数据存储空间首地址),所以,sizoef(a)的结果是指针变量a占内存的大小,一般在32位机上是4个字节。
a[0]是int类型,sizeof(a[0])也是4个字节,所以,结果永远是1。

Par conséquent, pour obtenir la longueur du tableau, vous ne pouvez obtenir l'effet qu'en utilisant la méthode ci-dessus dans la zone de code où le tableau est défini.

Tutoriel recommandé : "Tutoriel langage c"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn