Probleme de pointeur en c
Résolu/Fermé
xave4552
Messages postés
53
Date d'inscription
dimanche 16 mars 2008
Statut
Membre
Dernière intervention
24 février 2018
-
16 juil. 2009 à 19:48
xave4552 Messages postés 53 Date d'inscription dimanche 16 mars 2008 Statut Membre Dernière intervention 24 février 2018 - 16 juil. 2009 à 21:24
xave4552 Messages postés 53 Date d'inscription dimanche 16 mars 2008 Statut Membre Dernière intervention 24 février 2018 - 16 juil. 2009 à 21:24
A voir également:
- Probleme de pointeur en c
- Pointeur souris disparu windows 10 - Guide
- Pointeur souris - Guide
- Pointeur souris disparu pc portable asus - Guide
- Cercle bleu pointeur souris clignote en permanence windows 10 ✓ - Forum Windows 10
- Pointeur souris avec rond de chargement qui clignote sans arrêts ✓ - Forum Windows
3 réponses
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 842
16 juil. 2009 à 21:08
16 juil. 2009 à 21:08
Je te donne un exemple :
Et la trace :
./xave
0 1 2 3 4 5 6 7 8 9
9 8 7 6 5 4 3 2 1 0
Cdlt
#include <stdio.h> static void affichage(const int* const, const size_t); static void inverse(int*, const size_t); static void affichage(const int *const tab, const size_t sz) { size_t i=0; while(i<sz) printf("%d ",tab[i++]); putchar('\n'); } static void inverse(int *const tab, const size_t sz) { size_t i; for(i=0;i<sz/2;i++) { int buffer=tab[i]; tab[i]=tab[sz-i-1]; tab[sz-i-1]=buffer; } } int main(void) { int tab[]={0,1,2,3,4,5,6,7,8,9}; affichage(tab,sizeof tab/sizeof *tab); inverse(tab,sizeof tab/sizeof *tab); affichage(tab,sizeof tab/sizeof *tab); return 0; }
Et la trace :
./xave
0 1 2 3 4 5 6 7 8 9
9 8 7 6 5 4 3 2 1 0
Cdlt
mindslight
Messages postés
87
Date d'inscription
mercredi 1 juin 2005
Statut
Membre
Dernière intervention
29 octobre 2009
12
16 juil. 2009 à 21:14
16 juil. 2009 à 21:14
Bonjour,
Tu peux utiliser l'opérateur XOR (ou exclusif) pour échanger deux variables sans l'aide d'une troisième.
int x = 42;
int y = -21;
x = x^y;
y = x^y;
x = x^y;
/*
** Ici x = -21 et y = 42
*/
Attention cela fonctionne que avec des types scalaires (int, long, char, ...) mais pas de structure par exemple.
Tu peux utiliser l'opérateur XOR (ou exclusif) pour échanger deux variables sans l'aide d'une troisième.
int x = 42;
int y = -21;
x = x^y;
y = x^y;
x = x^y;
/*
** Ici x = -21 et y = 42
*/
Attention cela fonctionne que avec des types scalaires (int, long, char, ...) mais pas de structure par exemple.
xave4552
Messages postés
53
Date d'inscription
dimanche 16 mars 2008
Statut
Membre
Dernière intervention
24 février 2018
16 juil. 2009 à 21:24
16 juil. 2009 à 21:24
Ok merci