begin process at 2012 05 29 21:19:42
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Divers

 > 

Débutant(e)

 > 

Probleme lors de la compilation!!! Help!!!


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Probleme lors de la compilation!!! Help!!!

jeudi 30 juillet 2009 à 22:43:51 | Probleme lors de la compilation!!! Help!!!

Noha819

Salut! Je suis débutant en C, et jai un petit probleme sur un code
lors de la compilation... Je mexplique, jai créé une partie du code a part
comme un nouveau projet, le resultat est nickel, sauf que maintenant que je
l'ai mis en tant que fonction dans mon prog principal, il trouve une erreur
sur un while tout con. Il me dit "Syntaxe error befor while."
Et il block aussi sur le commande "strcpy" et "strcat" il me dit
"conflig types for "strcat"".
Voici les lignes en question:

Code C/C++ :

-----------------------------------------------------------------------------------------
while( destination[i] != '\0' )
{
chainetmp[t] = destination[i];
t++;
i++;
}

strcpy (destination, chainetmp);
strcat(dosstmp, destination);
strcpy (destination, dosstmp);
------------------------------------------------------------------------------------------

(Si jai besoin d'un while ici c'est parce que je copie destination a partir du "i" caractere...)

Et voici le fonction complete:
Code C/C++ :

------------------------------------------------------------------------------------------
char convDE(char *destination)
{
char dosstmp[1000] = "K:\SAVE\\Sauvegarde\\";
char chainetmp[1000] = "";
int t=0, i=0;

while( i<=4 )

{
if(destination[i] != "'\'" && destination[i] != ':' && destination[i] != '\0')
{
chainetmp[t] = destination[i];
i++;
t++;
}

else if (destination[i] == "'\'")
{
chainetmp[t] = "'\'";
t++;
chainetmp[t] = "'\'";
t++;
i++;
}

if (destination[i] == ':')
{
chainetmp[t] = ' ';
i++;
}

}

while( destination[i] != '\0' )
{
chainetmp[t] = destination[i];
t++;
i++;
}

strcpy (destination, chainetmp);
strcat(dosstmp, destination);
strcpy (destination, dosstmp);

return(destination);

}
--------------------------------------------------------------------------------------------

Jai meme essayé de suprimer la partie de while a return et il me trouve une erreur sur
le "}" de la fin!

Jutilise l'IDE codeblocks, et je tourne ss windows
Merci du coup de main!

vendredi 31 juillet 2009 à 08:29:48 | Re : Probleme lors de la compilation!!! Help!!!

Lucky92

Réponse acceptée !

Salut,

Tes erreurs sont liées à la manipulation des types caractères :

char dosstmp[1000] = "K:\SAVE\\Sauvegarde\\";
=> char dosstmp[1000] = "K:\\SAVE\\Sauvegarde\\";


"'\'" => '\\'

Cordialement.

vendredi 31 juillet 2009 à 09:39:30 | Re : Probleme lors de la compilation!!! Help!!!

Noha819

En fait je nai peut etre pas tout précisé!
Le but de cette fonction et de convertir destination. On lui envoie sous forme "C:\Program file\\Astase\\Ted.jpg" par exemple, et elle a pour but de retourner "K:\SAVE\\Sauvegarde\\C\\Program file\\Astase\\Ted.jpg".

Plus précisément destination est une copie de char localisation et une fois ma chaine retournée dans le prog principal, je demande de copier le fichier localisation dans le dossier destination.
Jespere que le me suis bien explicé hem.
Au fait je met "C:\" et non pas "C:\\" pasce que j'utilise la fonction "CopyFile(file_in, file_out , TRUE);" et je nai réussi a la faire fonctionner que sous cette forme!!
Ouf je croi que j'ai tout dit dsl lucky92 pour le manque de détails!!!

vendredi 31 juillet 2009 à 10:04:09 | Re : Probleme lors de la compilation!!! Help!!!

Kotomine

Réponse acceptée !

Laisse moi t'éclaircir la dessus :
quand on met un \, en C, c'est un caractère d'échapement qui modifie le caractere qui suit.

En tappant C:\P, tu vas enregistrer dans ton code la liste de caracteres suivants:

'C' , ':', '\P' (je ne sais pas du tout ce que va pondre \P)

Donc, tu DOIS duppliquer TOUT tes \ dans un chemin... sinon, ça ne marchera pas !

Alternativement, pourquoi ne pas mettre tes séparateur sous forme UNIX ? (C:/Progra.../ )

Et encore, je ne connais psa du tout la fonction CopyFile .. elle supporte les espaces dans les noms de fichiers ?




;I'm just keeping the hopeless cross to increase the meaninglessness

vendredi 31 juillet 2009 à 11:05:45 | Re : Probleme lors de la compilation!!! Help!!!

Noha819

Merci pour ta reponse Kotomine!
Je suis daccord avec toi pour mettre deux '\' a chaque fois, mais je n'ais pas réussis a faire marcher copyfile jai galeré meme, et je nai réussis a copier un fichier qu'en mettant le chemin sous cette forme!(C'est a dire avec un separateur apres le disque et deux pour le reste). Peut etre my suisje mal pris?
Oui copyfile accepte les espaces. Jai essayé aussi avec les separateurs UNIX, sans succes... Ou peut etre y a til une autre facon de copier toute sorte de fichier?
Et aussi pour Lucky92 merci tu avai raison pour '\\' et non pas "'\'" car le compilateur n'en reconnais qu'un seul sur les deux comme le dit bien Kotomine!

Cependant le compilateur me pourris toujours sur la ligne "while( destination[i] != '\0' )" alors que bon, je ne vois pas ou est lerreur sur cette ligne!!
Je vais essayé en changeant tout mes "'\'"...

vendredi 31 juillet 2009 à 11:10:35 | Re : Probleme lors de la compilation!!! Help!!!

Noha819

Ce que je ne comprend pas aussi, c'est que quand je créé un nouveau projet et que je met ma fonction en tant que main et que je déclare "destination".
Quand je compile il n'y a pas d'erreur et en plus (avec un printf) la chaine qui en sort est bien celle que je souhaite obtenir!

Alors que c le meme code a part le printf et le
char destination = "C:\machinmachin"

vendredi 31 juillet 2009 à 11:30:25 | Re : Probleme lors de la compilation!!! Help!!!

Noha819

Youhou! Merci a vous deux le probleme venais bien des \ !!!
Je ne sais pas comment je vais me servir de copyfile mais c'est un autre blem!!!
tcho!



Cette discussion est classée dans : code, while, destination, strcpy, chainetmp


Répondre à ce message

Sujets en rapport avec ce message

Fonction While multiple [ par oshin ] Salut tout le monde,J'ai un problème tout bête..Dans mon programme j'ai inclus une fonction "While(1)" donc infini.. le probleme c'est que lorsque le Com. série rs232 (GetOverlappedResult) [ par LaTatadu91 ] Bonjour a tous,voila j'essaye de programmer un peit logiciel qui permettra de lire et ecrire sur le port COM.pour tout ce qui est d'ouvrir , lire , ec explication sur une commande de tempo [ par mkal ] bonjours voila mon probleme: Mon prof d'info nous a donnée pendant un cours, un code qui realise une temporisation.le truc c'est que le code n'est pas Prologue stdcall [ par juju12 ] Bonsoir;Dans le but d'optimiser la rapidité d'appel de fonction dnas un prog, je veux écrire mes propres prologue-épilogue (__declspec(naked)) tout en Copie de code source application flash [ par erwannoooo ] Bonjour,Pouvez vous m'indiquer s'il existe un moyen de copier le code source d'une application flash sur internet ?? en fait je recherche le moyen de [GTK mm + CODE::BLOCKS] Installation [ par universalbitmapper ] Bonjour,Dans un premier temps j'ai réussi à installer GTK+ sur Code::Blocks,Mais je préfère développer en C++, alorsJ'ai téléchargé le GTKmm Win32, j' DEV-C++ DLL VBA [ par fx_forum ] Bonjour, Pour acceller un code Excel VBA, j'aimerais sous-traiter des taches a une dll. C'est possible et il y a plein d'exemples sur ce site. Mais p trier tableau de struture [ par henrydessss ] bonjour,mon probleme : j'ai une structure comme ceci :struct repertoire{    char *nom;    char *prenom;};typedef struct repertoire Repertoire;Repertoi Deboguer un code [ par ptit programeur ] bonjours je voudrais savoir pourquoi ce code est faux#include #include using namespace std; int main(int argc, char *argv[]){  long triple (long question sur service windows [ par deck_bsd ] Bonjour/bonsoir à tous,Voila une petite question qui à mon avis n'en est pas une :DVoila en faite je crée un service et pour cela j'ai créer un projet


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 4,415 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales