Probleme c++ Re-ecrire le fichier exe
salut
à signaler au debut :je suis (debutant)²
j essaie a apprendre du c++..et comme tout le monde avec le fameux code "HelloWorld"
ça marche nickel
mais des que je touche au programme (ajouter system("pause");) je recois le message d erreur
Permission denied
id returned 1 exit status
je peux meme pas effacer le fichier exe depuis windows explorer
en redemarrant le pc ca marche et le nouveau code est accepte
j ai cherché sur google et il semble que ca a une relation avec les droits d'acces (qqchose comme ça)
si c est le cas que faire pour les regles
ou si vous avez d autres idees n hesitez pas
Merci d'avance
à signaler au debut :je suis (debutant)²
j essaie a apprendre du c++..et comme tout le monde avec le fameux code "HelloWorld"
ça marche nickel
mais des que je touche au programme (ajouter system("pause");) je recois le message d erreur
Permission denied
id returned 1 exit status
je peux meme pas effacer le fichier exe depuis windows explorer
en redemarrant le pc ca marche et le nouveau code est accepte
j ai cherché sur google et il semble que ca a une relation avec les droits d'acces (qqchose comme ça)
si c est le cas que faire pour les regles
ou si vous avez d autres idees n hesitez pas
Merci d'avance
A voir également:
- Probleme c++ Re-ecrire le fichier exe
- Fichier bin - Guide
- Fichier epub - Guide
- Fichier rar - Guide
- Comment réduire la taille d'un fichier - Guide
- Fichier .dat - Guide
1 réponse
Normalement tu es sensé :
1) Ecrire un fichier de source c++, par exemple test.cpp. il suffit pour celà d'un simple éditeur texte mais en général c'est peu pratique, donc utilise un éditeur amélioré (par exemple gvim l'éditeur texte d'un environnement de développement come dev-cpp) :
http://www.bloodshed.net/
2) Compiler ce programme pour générer un exécutable, par exemple test.exe. Si tu installé dev-cpp tu peux compiler aisément ton fichier de source. Le compilateur utilisé s'appelle en fait gcc (ou g++), et c'est d'ailleurs ce compilateur qui est utilisé sous linux. Il t'incitera donc à programmer relativement proprement ce qui est plutôt une bonne chose.
3) Exécuter ton programme. Souvent une console est intégrée dans l'environnement de développement permettant en particulier de voir le "hello world".
Typiquement dans ton cas le hello world s'écrit ;
std::cout = la sortie standard, concrètement la console dans laquelle tu écris.
std::endl = retour à la ligne
<< = écrire
getchar() = lire un caractère sur l'entrée standard (std::cin). En pratique c'est comme ça qu'on fait une pause de manière propre. Il faut éviter le plus possible les appels à une fonction système comme tu veux faire car sinon ton programme est dépendant du système d'exploitation (typiquement, systeme("pause") n'a pas de sens sous linux.
Puisqu'on parle de linux voilà ce que donne le programme que je t'ai donné :
Bonne chance
1) Ecrire un fichier de source c++, par exemple test.cpp. il suffit pour celà d'un simple éditeur texte mais en général c'est peu pratique, donc utilise un éditeur amélioré (par exemple gvim l'éditeur texte d'un environnement de développement come dev-cpp) :
http://www.bloodshed.net/
2) Compiler ce programme pour générer un exécutable, par exemple test.exe. Si tu installé dev-cpp tu peux compiler aisément ton fichier de source. Le compilateur utilisé s'appelle en fait gcc (ou g++), et c'est d'ailleurs ce compilateur qui est utilisé sous linux. Il t'incitera donc à programmer relativement proprement ce qui est plutôt une bonne chose.
3) Exécuter ton programme. Souvent une console est intégrée dans l'environnement de développement permettant en particulier de voir le "hello world".
Typiquement dans ton cas le hello world s'écrit ;
#include <iostream> // ce header permet d'écrire sur une console
int main(){
std::cout << "hello world" << std::endl; // écrire hello world, revenir à la ligne
std::cout << "press any key" << std::endl;
getchar(); // faire une pause
return 0;
}
std::cout = la sortie standard, concrètement la console dans laquelle tu écris.
std::endl = retour à la ligne
<< = écrire
getchar() = lire un caractère sur l'entrée standard (std::cin). En pratique c'est comme ça qu'on fait une pause de manière propre. Il faut éviter le plus possible les appels à une fonction système comme tu veux faire car sinon ton programme est dépendant du système d'exploitation (typiquement, systeme("pause") n'a pas de sens sous linux.
Puisqu'on parle de linux voilà ce que donne le programme que je t'ai donné :
(mando@aldur) (~) $ g++ -W -Wall -o plop.exe plop.cpp (mando@aldur) (~) $ ./plop.exe hello world press any key (mando@aldur) (~) $
Bonne chance