conversion de int en int!

conversion de int en int! - C++ - Programmation

Marsh Posté le 01-03-2005 à 14:02:00    

Voila, j'ai un souci avec visual C++ qui me dit que je dois convertie un int en int.
Dans mon programme principal, je fais appelle à une fonction qui me renvoi un int  
Le code rapide:

Code :
  1. int main (void)
  2. {
  3. int config;
  4. config= daqConfig;
  5. return 0;
  6. }
  7. int daqConfig (void )
  8. {
  9. int err;
  10. err= daqSet(DaqInitialize);
  11. return err;
  12. }


 
et quand je compile visual m'indique cette erreur:

Citation :


error C2440: '=' : cannot convert from 'int (__cdecl *)(void)' to 'int'
This conversion requires a reinterpret_cast, a C-style cast or function-style cast


 
et la, je suis perdu, je comprend absolument pas ce qui ce passe ni ce que je dois faire.
Si quelqu'un a une idée.
 
Merci

Reply

Marsh Posté le 01-03-2005 à 14:02:00   

Reply

Marsh Posté le 01-03-2005 à 14:02:49    

T'as oublié les parenthèses :

config = daqConfig();


Message édité par FlorentG le 01-03-2005 à 14:02:57
Reply

Marsh Posté le 01-03-2005 à 14:03:12    

daqConfig() <---- parentgèses.
edit : grilled :-) mais c'etait facile aussi.


Message édité par Stroustrup-Junior le 01-03-2005 à 14:03:40
Reply

Marsh Posté le 01-03-2005 à 14:07:06    

L'erreur de ton programme est, comme le dit si bien FlorentG, c'est que t'oublie les parenthèses.
Le pb c'est que la syntaxe "daqConfig" sans parenthèses existe, mais elle signifie "récupérer l'adresse de la fonction". Alors que la syntaxe "daqConfig()" signifie "exécuter le code de la fonction"
 
Ton compilo accepte donc "config=daqConfig" mais il croit que tu veux stocker une adresse dans un int et il comprend pas !!!


---------------
Vous ne pouvez pas apporter la prospérité au pauvre en la retirant au riche.
Reply

Marsh Posté le 01-03-2005 à 14:27:07    

Et mer*** je suis vraiment c**  
 
Désolé d'avoir polué le forum avec un erreur aussi stupide!
 
Je vais aller me pendre!

Reply

Marsh Posté le 01-03-2005 à 21:20:34    

blaise_laporte a écrit :

Et mer*** je suis vraiment c**  
 
Désolé d'avoir polué le forum avec un erreur aussi stupide!
 
Je vais aller me pendre!


 
NNOOOONNN !!! Tes petites blagues nous font trop rire  :D


---------------
Vous ne pouvez pas apporter la prospérité au pauvre en la retirant au riche.
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed