Tom's Guide > Forum > Programmation > Programmation C++ Newbie Je trouve pas mon erreur

Programmation C++ Newbie Je trouve pas mon erreur

Forum Programmation : Programmation C++ Newbie Je trouve pas mon erreur

TomsGuide.com : 800 000 inscrits répondent à toutes vos questions high-tech et informatique. Pour obtenir de l'aide, inscrivez-vous gratuitement !
Mot :    Pseudo :           
 

Voilou salut a tous je viens de faire un prog ou je test une idée et bizarrement sa marche pa :D
Je suis un NewBie si quelqu'un pouvait juste me dire ma faute sur ce programme trés simple !:

#include <iostream.h>
main()
{
char pass[15];
cout <<"Pour acceder au données suivante veuillez entrer le password : ";
cin >> pass;
if (pass != test )
cout <<"Mauvais pass !";
else
cout <<"Password correct";
system("PAUSE" );
}

voila :) sinon je cherchait une commande pour ouvir un fichier (je crois que c fopen ) mais je n'en trouve pas ou je n'arrive pas a l'utiliser .
Si quelqu'un a un tuto ou peut m'expliquer...
Et pour finir existe-t-il un site ou sont repertorié les commandes ?(genre ping).
Merci bicoup pour votre aide les copains :D

a+

oSy

Liens sponsorisés
Inscrivez-vous ou connectez-vous pour masquer ceci.

Hum sinon j'ai trouver mon erreur j'ai pas defini test !
sinon quelqu'un pourrait repondre a mes autres question ya -1 deja la ;)

Répondre à oSy

Dis nous ce que le debugger signale comme erreur et la ligne...

Répondre à zak888

non c bon comme di precedemment je n'avais pas defini test :)
mais sinon ou pourez je trouvez un site qui reunit les commandes des .h car je trouve pas :) merci a tous

Répondre à oSy

je l'ai vu en 10 secondes que tu n'avais pas déclaré test... et c'est le genre d'erreur qu'un compilateur te donne en général.

pour les .h, va voir sur www.developpez.com, on ne sait jamais...

Répondre à Onigiri@IDN

pour ouvrir un fichier et enregistrer des trucs dedans, voilà un bout de code que j'avais fait ...

c'est pas commenté du tout ... et bourrin à souhait ... et les fonctions utilisées pour les fichiers sont celels qui commencent par f (fprint, fopen, fclose ... )

#include "StdAfx.h"
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

FILE *stream;

int _BruteForce_(int code, int max);
bool findChar(char* strToFind, char* strSource);

int main(int argc, char* argv[])
{
int r_count = argc - 1;
char* max = NULL;
char* code = NULL;
char* arg_max = NULL;
char* arg_code = NULL;
int int_arg_max = 0;
int int_arg_code = 0;

if(r_count < 2 || r_count > 2){
printf("Brutus v1.0 -- Crack BruteForce ;-)\n" );
printf("veuillez specifier le maximum de boucles et le code !\n" );
printf("Arguments valides\n" );
printf(" -h :: cet ecran\n" );
printf(" -code=x :: specifie le code a cracker, ou x est le code\n [entier naturel]\n" );
printf(" -max=y :: specifie le nombre de boucles, ou y est le\n nombre de boucles [entier naturel]\n" );
return 0;
}
if(r_count == 2){
if(findChar("max", argv[1])){
max = argv[1];
code = argv[2];
}else{
code = argv[1];
max = argv[2];
}

arg_max = new char[(strlen(max)-5)];
arg_code = new char[(strlen(code)-6)];

strncpy(arg_max, max+5, (strlen(max)-5));
strncpy(arg_code, code+6, (strlen(code)-6));

arg_max[(strlen(max)-5)] = NULL;
arg_code[(strlen(code)-6)] = NULL;

int_arg_max = atoi(arg_max);
int_arg_code = atoi(arg_code);
}

_BruteForce_(int_arg_code, int_arg_max);

delete[] arg_max;
delete[] arg_code;

return 0;
}

int _BruteForce_(int code, int max)
{
int a = 0;
int b = 0;
int c = 0;
//int d = 0;
int marche = 0;

printf("Brutus v1.0 -- Crack BruteForce ;-)\n" );
printf("Tentative de brute forcer pour trouver a, b, c et d avec le code %d\n", code);
printf("avec %d = x^2 - 9*y^2\n", code);

stream = fopen("crack.txt","a" );
fprintf(stream, "Tentative de brute forcer pour trouver a, b, c et d avec le code %d\n", code);
fprintf(stream, "avec %d = x^2 - 9*y^2\n", code);

for( a = 0; a <= max; a++ ) {
for( b = 0; b <= max; b++ ) {
//for( c = -15; c <= max; c++ ) {
//for ( d = -15; d <= max; d++) {
//int CheckSum = a*a - 9*b*b;
int CheckSum = a - 3*b;
int CheckSum2 = a + 3*b;
//int Ta = 3*a*((-1)^2) + 2*b*(-1) + c;
marche++;
printf("x=%d ; y=%d\n", a, b);
if( CheckSum == code ) {
printf("x=%d, y=%d, CheckSum=%d; CheckSum2=%d\n", a, b, CheckSum, CheckSum2);
fprintf(stream, "x=%d, y=%d, CheckSum=%d; CheckSum2=%d\n", a, b, CheckSum, CheckSum2);
}
//}
//}
}
}

if(marche == 0){
printf("\n\nDesole, aucune combinaison trouvee!\n" );
fprintf(stream, "\n\nDesole, aucune combinaison trouvee!\n" );
}

fclose(stream);

return 0;
}

bool findChar(char* strToFind, char* strSource)
{
char* res = "";

res = strstr(strSource, strToFind);

if(res != NULL){
return true;
}else{
return false;
}
}

Répondre à lissyx

Une fonction (pour windows) pour charger un fichier en mémoire que j'ai faite un jour et que j'utilise tout le temps depuis :


-----------------------------

#ifndef _WINDOWS_H
#include <windows.h>
#endif

int LoadFile(char FileName[], DWORD * FileSize, char** ReadBuffer)
{
//Ouverture du fichier
OFSTRUCT InputFile_OFSTRUCT;
HANDLE FileHandle=CreateFileA(FileName,GENERIC_READ|GENERIC_WRITE,FILE_SHARE_READ|FILE_SHARE_WRITE,0,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,0);
if (FileHandle==INVALID_HANDLE_VALUE) return 1;

//Demande de la taille du fichier
*FileSize=GetFileSize(FileHandle, 0);
if (*FileSize==0xFFFFFFFF) return 2;

//Lecture du fichier
*ReadBuffer = new char[*FileSize];
if (*ReadBuffer==0) return 3;
DWORD ByteRead;
if (!ReadFile(FileHandle, *ReadBuffer, *FileSize, &ByteRead, 0)) {
delete [] ReadBuffer;
return 4;
}

return 0;
}


---------------------------


Une fois que tu l'as éxecuté ton fichier est en mémoire et tu as sa taille (je sais pas si c'est mieux que quoi que ce soit d'autre mais bon...).

Pour l'utiliser, faut d'abord créer une variable de 4 octet (Dword) qui contiendra la taille du fichier et un pointeur de type char qui pointera ensuite vers le buffer dans lequel le fichier est mis en mémoire.

Exemple :

--------------------

DWORD Taille_Du_Fichier;
char * Buffer_Du_Fichier;
int Erreur=LoadFile("nom_du_fichier", &Taille_Du_Fichier, &Buffer_Du_Fichier);

---------------------

Le int Erreur c'est seulement si tu veux savoir précisément ce qui s'est passé si ça a pas foncionné.

si Erreur == 1 échèque d'ouverture du fichier
si Erreur == 2 échèque d'obtention de la taille du fichier
si Erreur == 3 échèque de création du buffer
si Erreur == 4 échèque de lecture du fichier

Répondre à Cyclomancer
Tom's Guide > Forum > Programmation > Programmation C++ Newbie Je trouve pas mon erreur
Aller à :

Il y a 2372 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici.

Attention

Vous allez répondre sur un sujet resté inactif pendant plus de 6 mois.
Assurez-vous d'apporter des éléments nouveaux à la discussion avant de poursuivre.

Répondre Annuler
Liens