[C] Pointeur en argument de fonction
Résolu/Fermé
kilian
Messages postés
8731
Date d'inscription
vendredi 19 septembre 2003
Statut
Modérateur
Dernière intervention
20 août 2016
-
5 mars 2005 à 13:35
kilian Messages postés 8731 Date d'inscription vendredi 19 septembre 2003 Statut Modérateur Dernière intervention 20 août 2016 - 5 mars 2005 à 14:09
kilian Messages postés 8731 Date d'inscription vendredi 19 septembre 2003 Statut Modérateur Dernière intervention 20 août 2016 - 5 mars 2005 à 14:09
A voir également:
- [C] Pointeur en argument de fonction
- Python est introuvable. exúcutez sans argument pour procúder ó l - Forum Python
- Python introuvable - Forum Python
- Argument bash - Astuces et Solutions
- Fonction si et - Guide
- Erreur argument casio ✓ - Forum calculatrices
1 réponse
kilian
Messages postés
8731
Date d'inscription
vendredi 19 septembre 2003
Statut
Modérateur
Dernière intervention
20 août 2016
1 522
5 mars 2005 à 14:09
5 mars 2005 à 14:09
Ah d'accord, un pointeur ne doit pas être du type de l'adresse, mais du même type que la variable à laquelle il fait référence...
Donc j'ai changé le type de *ptab en unsigned short int.
Ensuite le coup du while(*ptab<20) est à remplacer par un compteur avec for sans utiliser *ptab... Normal ça ne fait pas référence à l'indice du tableau en cours mais à la valeur à laquelle *ptab fait référence...
Pff c'est compliqué les pounteurs :-(
Voilà ce que ça donne maintenant:
Désolé pour le dérangement...
Donc j'ai changé le type de *ptab en unsigned short int.
Ensuite le coup du while(*ptab<20) est à remplacer par un compteur avec for sans utiliser *ptab... Normal ça ne fait pas référence à l'indice du tableau en cours mais à la valeur à laquelle *ptab fait référence...
Pff c'est compliqué les pounteurs :-(
Voilà ce que ça donne maintenant:
#include <stdio.h>
#define TWEN 20
int main(void)
{
unsigned short int tab[TWEN]={1,5,7,65,45,74,85,4,2,6,4,5,1,45,89,41,75,74,2};
int i;
printf("Votre tableau est constitué des éléments suivant:\n");
for (i=0;i<21;i++)
{
printf("%d ",tab[i]);
}
void print_pointeur_tab(unsigned short int champs,unsigned short int *ptab)
{
for (i=0;i<champs+1;i++)
{
printf("\n%d\n",*ptab++);
}
}
print_pointeur_tab(TWEN,tab);
return 0;
}
Désolé pour le dérangement...