[C] i=(i==-1)? ++a-1 : i

Résolu
maje3 Messages postés 55 Date d'inscription   Statut Membre Dernière intervention   -  
mamiemando Messages postés 33766 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,
j'essai de comprendre un programme en C mais cette petite partie ci-dessous me fatigue:


...
...
typedef struct
{
char szCodMed[20];
}
stMEDICAMENT, *lpMEDICAMENT;
stMEDICAMENT stMed[30];
lpMEDICAMENT lpMed;
int i, a;
...
...
case IDOK:
i= (i==-1) ? ++a-1: i; // JE NE COMPREND PAS SURTOUT CETTE PARTIE
lpMed=&stMed[i];
GetDlgItemText(hDlg, IDC_CODMED, lpMed -> szCodMed, sizeof (lpMed -> szCodMed);
...
...


J'espere recevoir tres bientot une aide de vous. MERCI BEAUCOUP D'AVANCE
A voir également:

2 réponses

mamiemando Messages postés 33766 Date d'inscription   Statut Modérateur Dernière intervention   7 878
 
i = (i == -1) ? ++a - 1: i;

équivaut à :
if (i == -1){
  ++ a;
  i = a - 1;
}else{
  i = a;
}

Bonne chance
0
loupius
 
[C] i=(i==-1)? ++a-1 : i
Heu, tu as sans aucun doute, voulu écrire:
if (i == -1){
  ++ a;
  i = a - 1;
}else{
  i = i;
}
ce qui peut se simplifier en:
if (i == -1)
{
  ++ a;
  i = a - 1;
}
Bonne soirée.
0
mamiemando Messages postés 33766 Date d'inscription   Statut Modérateur Dernière intervention   7 878
 
Oui tout à fait :-) Merci de ta vigilance et ces précisions loupious !
0