Probleme en C
twiiiix
Messages postés
325
Date d'inscription
Statut
Membre
Dernière intervention
-
twiiiix Messages postés 325 Date d'inscription Statut Membre Dernière intervention -
twiiiix Messages postés 325 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
je débute dans la programmation C et je voudrais savoir comment créer un dossier/fichier sur le bureau
j'ai essayer ça:
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
FILE* fichier = NULL;
fichier = fopen("%HOMEPATH%\\Desktop\\test.txt", "w");
return 0;
}
mais ça n'a pas marché(si je met le nom complet a la place de %HOMEPATH% ça marche)
qu'est-ce qui ne va pas? y-a t-il un autre moyen ?
merci d'avance pour vos réponse.
je débute dans la programmation C et je voudrais savoir comment créer un dossier/fichier sur le bureau
j'ai essayer ça:
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
FILE* fichier = NULL;
fichier = fopen("%HOMEPATH%\\Desktop\\test.txt", "w");
return 0;
}
mais ça n'a pas marché(si je met le nom complet a la place de %HOMEPATH% ça marche)
qu'est-ce qui ne va pas? y-a t-il un autre moyen ?
merci d'avance pour vos réponse.
10 réponses
Salut,
Ceci est normal. %homepath% n'existe dans dans la console et renvoie la valeur de la variable homepath.
Si tu mets ceci en C, il ne le traduira pas. Si tu veux, tu peux néanmoins utiliser la fonction getenv : http://www.linux-kheops.com/doc/man/manfr/man-html-0.9/man3/getenv.3.html
Cdlt,
Ceci est normal. %homepath% n'existe dans dans la console et renvoie la valeur de la variable homepath.
Si tu mets ceci en C, il ne le traduira pas. Si tu veux, tu peux néanmoins utiliser la fonction getenv : http://www.linux-kheops.com/doc/man/manfr/man-html-0.9/man3/getenv.3.html
Cdlt,
Merci de m'avoir répondu mais ce que je cherche a faire c'est créer un dossier ou un fichier le bureau de celui qui lance le programme car je ne connais pas son nom d'utilisateur ou encore l'emplacement de son dossier utilisateur
est-ce qu'il y a quelque chose a écrire pour pouvoir accéder directement au bureau ou au dossier utilisateur ?
est-ce qu'il y a quelque chose a écrire pour pouvoir accéder directement au bureau ou au dossier utilisateur ?
Je te réponds la même chose que précédemment : getenv(var);
Par exemple getenv(homepath) te renverra un pointeur sur un char contenant la chaîne de caractère que tu t'attendais à avoir en tapant %homepath%. A partir de là, une petite concaténation avec strncat pour mettre "\\Desktop\\..." et le tour est joué.
Par exemple getenv(homepath) te renverra un pointeur sur un char contenant la chaîne de caractère que tu t'attendais à avoir en tapant %homepath%. A partir de là, une petite concaténation avec strncat pour mettre "\\Desktop\\..." et le tour est joué.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
ok merci mais le truc c'est que j'ai pas bien compris (je débute si tu pouvais m'expliqué ce qu'il faut que je fasse,j'ai beaucoup avec les pointeur) merci bcp
const char* homepath=getenv("homepath");
if (homepath) {
puts(homepath);
}
Ce programme mettra la variable d'environnement homepath dans à une adresse pointée par homepath.
Donc, en mettant puts (ou printf), tu peux afficher la valeur de %homepath%.
Comment utilisé ce que tu ma monter pour pouvoir l'écrire comme je l'ai montré dans mon premier post ?