I créé une structure telle que:scanf() et nombres à virgule flottante en Turbo C
typedef struct {
float real, img;
} cmplx;
et crée une fonction en tant que:
void input(cmplx *a){
scanf("%f + %f i", &a->real, &a->img); }
et appelle la fonction de principal en tant que:
cmplx a;
input(&a);
L'exécution s'arrête lorsque le scanf
est atteint. Si les floats sont remplacés par ints, le problème est résolu. Quel est ce comportement? Est-ce que je peux utiliser float pour mon problème?
Le programme a été compilé sur Turbo C, dans MS-Windows XP
Quelle entrée donnez-vous au programme? – rasmus
(a) Vérifier la valeur renvoyée par 'scanf()'; il vous indique combien de conversions ont fonctionné. (b) Votre bibliothèque d'exécution C prend-elle en charge automatiquement les opérations à virgule flottante ou devez-vous dire au compilateur de lier avec la bibliothèque à virgule flottante? Converti en code exécutable sur Mac OS X, il fonctionne correctement avec une entrée valide. –
y at-il un code que je peux écrire pour dire au compilateur de lier la bibliothèque de points flottants? Ou nous shoud compilers params – cipher