A voir également:
- Aide pour fonction lenght
- Fonction si et - Guide
- Fonction moyenne excel - Guide
- Fonction somme excel - Guide
- Fonction filtre excel n'existe pas - Forum Excel
- Fonction remplacer word - Guide
4 réponses
Doctor C
Messages postés
627
Date d'inscription
mardi 12 juin 2007
Statut
Membre
Dernière intervention
19 février 2016
398
12 nov. 2013 à 15:49
12 nov. 2013 à 15:49
J'ai lu sur StackOverflow que la ligne suivante devrait te donner le nombre d'éléments d'un tableau:
En gros, tu divises le nombre de bytes alloués au tableau par le nombre de bytes alloués pour le premier élément du tableau.
Par exemple, dans ton cas tu as un tableau de "char".
sizeof(text1) : 32 bytes, 1 byte par élément "char" de ton tableau.
sizeof(*text1) : 1 byte, le nombre de bytes alloués au premier élément de ton tableau (autrement dit, le nombre de bytes alloués à un élément de type "char").
Si tu divises 32 par 1, tu as 32 éléments dans ton tableau.
Bonne chance!
sizeof(text1)/sizeof(*text1)
En gros, tu divises le nombre de bytes alloués au tableau par le nombre de bytes alloués pour le premier élément du tableau.
Par exemple, dans ton cas tu as un tableau de "char".
sizeof(text1) : 32 bytes, 1 byte par élément "char" de ton tableau.
sizeof(*text1) : 1 byte, le nombre de bytes alloués au premier élément de ton tableau (autrement dit, le nombre de bytes alloués à un élément de type "char").
Si tu divises 32 par 1, tu as 32 éléments dans ton tableau.
Bonne chance!
Merci Doctor C de m'avoir répondu mais je t'avoue ne pas avoir tout compris dans ton explication, je dois mettre "sizeof(text1)/sizeof(*text1)" dans la boucle for juste avant le outBuffer[departoutbuffer] = text1[i]; ?? et dans mon cas je dois mettre quoi pour le size? je dois mettre ça : sizeof(32)/sizeof(1) ??
Doctor C
Messages postés
627
Date d'inscription
mardi 12 juin 2007
Statut
Membre
Dernière intervention
19 février 2016
398
Modifié par Doctor C le 12/11/2013 à 16:29
Modifié par Doctor C le 12/11/2013 à 16:29
Par souci de lisibilité, tu pourrais faire quelque chose comme ça. Je peux pas le tester mais je suppose que ça marche:
// Obtenir la longueur du tableau
int longueur = sizeof(text1)/sizeof(*text1);
for (int i = 0; i < longueur; i++)
{
outBuffer[departoutbuffer] = text1[i];
departoutbuffer++;
}
Bonne chance!
Echo "Lima Mike Alfa";
// Obtenir la longueur du tableau
int longueur = sizeof(text1)/sizeof(*text1);
for (int i = 0; i < longueur; i++)
{
outBuffer[departoutbuffer] = text1[i];
departoutbuffer++;
}
Bonne chance!
Echo "Lima Mike Alfa";