[C]Besoin d'aide pour un conflit de types
Loïc
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour, je suis étudiant dans un IUT GEII et je bloque sur un programme où l'on doit faire additionner 2 nombres binaires à l'aide des structures. Je ne vous demande pas de corriger mon programme mais de m'indiquer mon erreur .
Ma première erreur( et celle qui me gêne le plus) se trovue à la ligne "resul.nombre_bin = bin3;" où le programme m'indique ine incompatibilité entre les types qui sont pourtant tous les 2 définis par la structure nb_bnaire( qui est un tableau de 8 booléens). S vous ne comprenez pas une partie du programme, je peux vous l'expliquer . Merci d'avance pour vos réponses, en espérant que mon problème vous parait clair, sinon signalez le moi .
#include<stdio.h>
#include<stdbool.h>
typedef bool nb_binaire[8];
typedef struct
{
nb_binaire nombre_bin;
bool retenue;
}resul_binaire;
resul_binaire calcul_add(nb_binaire bin1, nb_binaire bin2)
{
unsigned char i;
bool r;
nb_binaire bin3;
resul_binaire resul;
r=0;
for(i=7;i>0;i--)
{
if(r==0)
{
bin3[i] = bin1[i] ^ bin2[i];
r = bin1[i] & bin2[i];
}
else
{
bin3[i] = !(bin1[i] ^ bin2[i]);
r = bin1[i] | bin2[i];
}
}
resul.nombre_bin = bin3;
resul.retenue = r;
return(resul);
}
int main()
{
nb_binaire b1,b2;
resul_binaire b_add;
unsigned char k;
b1={1,0,1,0,0,1,1,0};
b2={1,1,0,1,0,1,1,1};
b_add = cacul_add(b1,b2);
printf("b1+b2=%s",b_add.retenue);
for(k=0;k<7;k++)printf("%s",b_add.nombre-bin[k]);
system("pause");
return(0)
}
Ma première erreur( et celle qui me gêne le plus) se trovue à la ligne "resul.nombre_bin = bin3;" où le programme m'indique ine incompatibilité entre les types qui sont pourtant tous les 2 définis par la structure nb_bnaire( qui est un tableau de 8 booléens). S vous ne comprenez pas une partie du programme, je peux vous l'expliquer . Merci d'avance pour vos réponses, en espérant que mon problème vous parait clair, sinon signalez le moi .
A voir également:
- [C]Besoin d'aide pour un conflit de types
- Types de souris informatique - Guide
- Les types de ram - Guide
- Dans le document à télécharger, les références des pièces détachées sont affichées par pays, puis par type de pièces. réorganisez le document pour avoir : les pays dans l'ordre alphabétique : allemagne, espagne, france et italie ; et pour chaque pays, les pièces d'auto, de bateau et de moto dans cet ordre. quelle est la référence de la pièce en ligne 500 ? ✓ - Forum Windows
- Comment changer le type de fichier - Guide
- Erreur pour le propriétaire du site : type de clé non valide - Forum Mozilla Firefox