Bonjour,
Je dois réaliser un programme qui envoie un fichier d'un PC à un autre par un protocole particulier. Pour cela, j'ai des fonctions écrites en C que je peux adapter.
En début de main, je demande divers paramètres nécessaires à ma fonction d'envoi, dont le nom du fichier à envoyer sous forme d'un const char* pour respecter l'argument correspondant de fopen (j'ai bien sûr inclus le fichier en question dans mon répertoire de travail) :
1 2
| cout << "nom du fichier a envoyer (sans l'extension) " << endl;
cin >> &fichier; //stockage dans l'adresse pointée par fichier |
J'appelle ensuite ma fonction d'envoi. La lecture du fichier se fait dans celle-ci par:
infile = fopen(fichier, "rt");
Tout ce beau code se compile parfaitement, à l'exception du warning :

Envoyé par
mon IDE
"[C++ Avertissement] sendrou.cpp(26): W8030 Un temporaire a été utilisé pour le paramètre 'p' dans l'appel à 'istream::operator >>(void * &)'"
Par contre, au moment de l'exécution, mon PC se bloque sur la ligne ci-dessus, et je reçois le message d'erreur suivant :

Envoyé par
mon PC
Le projet rou_v_car.exe a provoqué une classe d'exception EAcessViolation avec le message 'Violation d'accès à l'adresse 7C9112B4. Lecture de l'adresse 00000100.' Processus stoppé.
Quelqu'un peut-il m'aider à résoudre mon problème svp
:
Merci d'avance
Partager