erreur dans le if ??? - C - Programmation
Marsh Posté le 12-11-2006 à 15:53:57
if (op == '+') ira beaucoup mieux. 
PS : ici c'est le forum C pas le C++ 
Marsh Posté le 12-11-2006 à 15:55:37
ReplyMarsh Posté le 12-11-2006 à 16:05:10
ReplyMarsh Posté le 12-11-2006 à 16:49:46
| raylcool a écrit : TU ES UN DIEU, je te remercie pour l'info.  | 
 
 
C'est C ici, pas C++ on a dit  
Marsh Posté le 12-11-2006 à 18:51:42
ReplyMarsh Posté le 12-11-2006 à 19:06:04
 
 ![[:roxelay] [:roxelay]](https://forum-images.hardware.fr/images/perso/roxelay.gif) 
 
Marsh Posté le 13-11-2006 à 15:10:15
| raylcool a écrit : ...  | 
 
 
En C il vaut mieux prendre l'habitude d'inverser les opérateurs comme ceci: 
|   | 
 
Dans ce cas ça ne passera jamais à la compilation. 
Marsh Posté le 13-11-2006 à 15:27:57
| avander a écrit : En C il vaut mieux prendre l'habitude d'inverser les opérateurs comme ceci:  
 | 
 
 ![[:arrakys] [:arrakys]](https://forum-images.hardware.fr/images/perso/arrakys.gif) 
  
opérandes... 
 
Et puis l'exemple est plus que douteux... 
| if ( NULL = p) ... | 
 
mais ça ne fonctionne que si l'un des opérandes est une expression constante. 
 
La meilleure parade, c'est encore de ne pas utiliser ==, mais !=. 
| if (p != NULL) ... | 
 
jamais de problèmes avec ça en 19 ans de C ... 
Marsh Posté le 13-11-2006 à 19:50:42
| raylcool a écrit : mais le problème c'est que mon if (op="+" ) ne ve pas fonctionner | 
 
Tiens... la nouvelle saison des newbies est arrivée... ![[:ddr555] [:ddr555]](https://forum-images.hardware.fr/images/perso/ddr555.gif) 
 
| Emmanuel Delahaye a écrit : 
 | 
 
| if (p) ... | 
  
   
  
Marsh Posté le 13-11-2006 à 20:49:21
| Sve@r a écrit :   
   | 
 
G33k code detected... 
Marsh Posté le 13-11-2006 à 20:50:31
Attention quand même à la définition de NULL, ce n'est pas garanti être égal à 0 je crois.
Marsh Posté le 13-11-2006 à 20:54:21
| Trap D a écrit : Attention quand même à la définition de NULL, ce n'est pas garanti être égal à 0 je crois. | 
 
NULL est garanti de se comporter comme 0 dans un contexte pointeur. (Ici, p est un pointeur, donc tout va bien...) 
 
Par contre, ceci n'est évidemment pas portable :  
| printf ("%p\n", NULL); | 
 
alors que cela est correct :  
| printf ("%p\n", (void *) NULL); | 
Marsh Posté le 12-11-2006 à 15:02:29
bonjour à tous,
je viens de créer un programme qui appel une fonction mais le problème c'est que mon if (op="+" ) ne ve pas fonctionner, alors est-ce-que quelqu'un aurait une idée svp ??
using namespace std;
#include <iostream>
void f1(float a,float b,char op);
main ()
{
float c,d;
char yz;
cout<<"Saisir deux reels : ";
cin>>c;
cin>>d;
cout<<"Choisissez votre operateur : ";
cin>>yz;
cout<<"Le resultat : ";
f1(c,d,yz);
system("PAUSE" );
}
void f1(float a,float b,char op)
{
float result;
if (op=="+" )
{result=a+b;
cout<<result;
}
}