C Aide code error

Fermé
vengeurstrike Messages postés 77 Date d'inscription vendredi 8 mai 2009 Statut Membre Dernière intervention 13 juin 2010 - 22 juil. 2009 à 00:30
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 - 22 juil. 2009 à 20:51
Bonjour, dans le but d'une réalisation d'un programme permettent de décrypter des psedo et des pass sous forme : 65_52_14_<>_36_65_14.

#include <stdio.h>
#include <stdlib.h>

int main()
{
char psedo[20] ="";
char pass[20] ="";
char code[200] = "";
int classePsedo = 0;
int classePass = 0;
char partie =0;
int i,e,a;
printf("Enter the code : ");
scanf("%s", code);
i = 0;
e = 0;
a = 0;
while(1)
{
if(code[i]=="_")
{
i++;
classePass=0;
classePsedo=0;
}
else if(code[i]=="<")
{
i++;i++;
partie = 1;
}
else if(code[i]=="/0") i=9999;
else
{
if(partie = 0)
{
while(code[i]!="_"&&code[i]!="<"&&code[i]!=">")
{
switch(classePsedo)
{
case 1 :
psedo[e]*= 10;

case 2 :
psedo[e]*=100;

default :
psedo[e]+= code[i];
}
classePsedo++;
i++;
}
}
else
{
while(code[i]!="_"&&code[i]!="<"&&code[i]!=">")
{
switch(classePass)
{
case 1 :
pass[a]*= 10;

case 2 :
pass[a]*=100;

default :
pass[a]+= code[i];
}
classePass++;
i++;
}
}
}
i++;
}
printf("\n%s___%s", psedo, pass);
system("PAUSE");
return 0;

C:\Users\marc\Desktop\Aplications en C\SteamDecrypter\main.c||In function `main':|
C:\Users\marc\Desktop\Aplications en C\SteamDecrypter\main.c|20|warning: comparison between pointer and integer|
C:\Users\marc\Desktop\Aplications en C\SteamDecrypter\main.c|26|warning: comparison between pointer and integer|
C:\Users\marc\Desktop\Aplications en C\SteamDecrypter\main.c|31|warning: comparison between pointer and integer|
C:\Users\marc\Desktop\Aplications en C\SteamDecrypter\main.c|34|warning: suggest parentheses around assignment used as truth value|
C:\Users\marc\Desktop\Aplications en C\SteamDecrypter\main.c|36|warning: comparison between pointer and integer|
C:\Users\marc\Desktop\Aplications en C\SteamDecrypter\main.c|36|warning: comparison between pointer and integer|
C:\Users\marc\Desktop\Aplications en C\SteamDecrypter\main.c|36|warning: comparison between pointer and integer|
C:\Users\marc\Desktop\Aplications en C\SteamDecrypter\main.c|55|warning: comparison between pointer and integer|
C:\Users\marc\Desktop\Aplications en C\SteamDecrypter\main.c|55|warning: comparison between pointer and integer|
C:\Users\marc\Desktop\Aplications en C\SteamDecrypter\main.c|55|warning: comparison between pointer and integer|
||=== Build finished: 0 errors, 10 warnings ===|

Quand je lance le programme sa me demende le code et sa plante ! help me ! merci de votre aide

13 réponses

pierre.d51 Messages postés 1505 Date d'inscription mercredi 21 février 2007 Statut Contributeur Dernière intervention 22 août 2012 1 270
22 juil. 2009 à 00:32
Un boulet "savant" qu'il en est un l'est un peu moins !

ooh.. purée.. on dis "sachant" !
0
cherche pas mème si tu trouve t'on ordi n'est pas assé puissant pour ce tipe de logiciel
0
pierre.d51 Messages postés 1505 Date d'inscription mercredi 21 février 2007 Statut Contributeur Dernière intervention 22 août 2012 1 270
22 juil. 2009 à 00:56
Très juste ! De plus, je viens de me rendre compte que nous aidons un pirate... ce que notre charte interdit formellement ! Nous devrions le signaler aux modos..
0
vengeurstrike Messages postés 77 Date d'inscription vendredi 8 mai 2009 Statut Membre Dernière intervention 13 juin 2010
22 juil. 2009 à 00:56
non non sa marche très bien
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
vengeurstrike Messages postés 77 Date d'inscription vendredi 8 mai 2009 Statut Membre Dernière intervention 13 juin 2010
22 juil. 2009 à 00:56
un pirate pk ?
0
pierre.d51 Messages postés 1505 Date d'inscription mercredi 21 février 2007 Statut Contributeur Dernière intervention 22 août 2012 1 270
22 juil. 2009 à 00:57
N'empeche que... ! Nous ne pouvons pas savoir pourquoi tu utilise ce logiciel...
0
pierre.d51 Messages postés 1505 Date d'inscription mercredi 21 février 2007 Statut Contributeur Dernière intervention 22 août 2012 1 270
22 juil. 2009 à 00:58
"programme permettent de décrypter des psedo et des pass "
0
vengeurstrike Messages postés 77 Date d'inscription vendredi 8 mai 2009 Statut Membre Dernière intervention 13 juin 2010
22 juil. 2009 à 00:58
je veut juste faire passer des psedo et des pass par msn ou autre sans risque que quelqu'un les intercepte et s'en serve
0
vengeurstrike Messages postés 77 Date d'inscription vendredi 8 mai 2009 Statut Membre Dernière intervention 13 juin 2010
22 juil. 2009 à 00:59
oui mais c'est moi qui ait pense le système de cryptage c'est pur les crypter et que mon correspondant les décrypte
0
mya1 Messages postés 334 Date d'inscription samedi 5 juillet 2008 Statut Membre Dernière intervention 28 janvier 2013 42
22 juil. 2009 à 01:23
je crois que la bibilothèque de #include<conio.h> t'en manque!!
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 840
22 juil. 2009 à 20:43
Non, ce n'est pas conio.h qui manque. Conio.h c'est lorsque tu utilises des fonctions spécifiques à windows.

Cdlt
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 840
22 juil. 2009 à 06:27
Salut,
Pour les autres : Il a bien le droit de se concevoir son propre système de chiffrement...
Les mots de passe de toute façon sur les systèmes ne sont pas chiffrés mais hacher, donc rien à voir avec son algo.

Sinon pour vengeurstrike :

if(code[i]=="_")
Attention tu compares un char avec une chaîne de caractères ("_"). Pour comparer avec un char, il faut le mettre entre apostrophes (code[i]=='_';)
De même pour les autres if.


pass[a]*= 10;
Attention, à ne pas dépasser la limite maximale d'un char. Tu peux utiliser le modulo pour ça (%).

code[i]=="/0")
/0 ? \0 caractère de fin de chaîne plutôt non ? Pareil entre apostrophe.

J'ai vite fait regarder, il y a sûrement d'autres erreurs, tiens moi au courant ;-))).
0
vengeurstrike Messages postés 77 Date d'inscription vendredi 8 mai 2009 Statut Membre Dernière intervention 13 juin 2010
22 juil. 2009 à 12:10
merci je vais modifier sa tout de suie et je te donne le resultat
0
vengeurstrike Messages postés 77 Date d'inscription vendredi 8 mai 2009 Statut Membre Dernière intervention 13 juin 2010
22 juil. 2009 à 12:20
#include <stdio.h>
#include <stdlib.h>

int main()
{
char psedo[20] ="";
char pass[20] ="";
char code[200] = "";
int classePsedo = 0;
int classePass = 0;
char partie =0;
int i,e,a;
printf("Enter the code : ");
scanf("%s", code);
i = 0;
e = 0;
a = 0;
while(1)
{
if(code[i]=='_')
{
i++;
classePass=0;
classePsedo=0;
}
else if(code[i]=='<')
{
i++;i++;
partie = 1;
}
else if(code[i]=='\0') i=9999;
else
{
if(partie = 0)
{
while(code[i]!='_'&&code[i]!='<'&&code[i]!='>')
{
switch(classePsedo)
{
case 1 :
psedo[e]*= 10;

case 2 :
psedo[e]*=100;

default :
psedo[e]+= code[i];
}
classePsedo++;
i++;
}
}
else
{
while(code[i]!='_'&&code[i]!='<'&&code[i]!='>')
{
switch(classePass)
{
case 1 :
pass[a]*= 10;

case 2 :
pass[a]*=100;

default :
pass[a]+= code[i];
}
classePass++;
i++;
}
}
}
i++;
}
printf("\n%s___%s", psedo, pass);
system("PAUSE");
return 0;

}

C:\Users\marc\Desktop\Aplications en C\SteamDecrypter\main.c||In function `main':|
C:\Users\marc\Desktop\Aplications en C\SteamDecrypter\main.c|34|warning: suggest parentheses around assignment used as truth value|
||=== Build finished: 0 errors, 1 warnings ===|


pareil la code plante
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 840
22 juil. 2009 à 20:51
Tu as une autre erreur.
if(partie = 0) est équivalent à : partie=0; if(0)
L'opérateur de comparaison en C est le double égal. Le simple égal est réservé à l'affectation.

Par contre, je n'ai pas regardé en détail ton algorithme. Mais j'ai l'impression qu'il n'est pas très propre et que ça va faire un segmentation fault^^.

Tiens moi au courant si c'est le cas ;-).
0