Auteur |
Message |
Silenc3
Inscrit le: 05 Aoû 2014 Messages: 11
|
Posté le : Lun Sep 01, 2014 3:44 pm Sujet du message : |
|
|
J'ai une petite question comment tu as fais pour trouver le bon "algo" pour charger les images? Tu as chercher les endroits, dans l'exe, ou il y avait des références aux image? ^^,
Oh et j'ai fait un petit test, le code hexa décimal contient bien le code assembleur, par exemple 00 00 ce traduit en assembleur par "add [eax],al"
Apres c'est un peu de la spéculation mais c'est pas impossible qu'il y ai des "blancs" étant donner que le programme saute d'un point a l'autre j'ai remarquer que parfois pour quand une chaine d'instruction est utilisée régulièrement a la fin plutôt que d'ajouter des conditions complexe on ajoutait le simplement une valeur "fixe" a une valeur d'adresse utilisée avec un jump en fin d'une chaine d'instruction pour trouver le bloc de code suivant.
Un peu comme si tu faisais un saute mouton avec des moutons de tailles différence mais a égale distance les uns des autres. |
|
Revenir en haut de page
|
|
Dysperia
Inscrit le: 16 Mai 2011 Messages: 89
|
Posté le : Lun Sep 01, 2014 9:46 pm Sujet du message : |
|
|
J'ai cherché une référence puis trouver les bonnes fonction qui jouais sur le fichier, loading traitement etc. Puis fini par trouver les algo. C'set long.
Si tu regardes de l'asm en hexa tu vas te faire peur. utilise un désassembleur comme ida ou autre. Sinon tu vas jamais suivre les fonctions, les boucles, les sauts conditionels ou non. Déjà tout en clair c’est archi hard alors en haxe <_< |
|
Revenir en haut de page
|
|
Silenc3
Inscrit le: 05 Aoû 2014 Messages: 11
|
Posté le : Mar Sep 02, 2014 4:03 pm Sujet du message : |
|
|
J'ai encore une question et j’arrête de t'embêter, tu as fait l'interface graphique en même temps que tu as codé ton programme ou tu as fait ton programme puis tu as mis une interface autour? |
|
Revenir en haut de page
|
|
Dysperia
Inscrit le: 16 Mai 2011 Messages: 89
|
Posté le : Mar Sep 02, 2014 9:00 pm Sujet du message : |
|
|
Les deux en même temps et tu ne m'embêtes pas du tout |
|
Revenir en haut de page
|
|
Silenc3
Inscrit le: 05 Aoû 2014 Messages: 11
|
Posté le : Mer Sep 03, 2014 1:05 pm Sujet du message : |
|
|
J'ai voulu me lancer dans le programmation d'un simple menu en ligne de commande (j'avais deja fait ce genre de chose en Batch pour windows) et la je vois que je ne peux pas sortir de mes choix If ou Switch avec des GOTO (parce que c'est déprécié) :/
Je cale un peu, en gros si je comprend bien ce que j'ai lu sur le net:
Au lieu de le concentrer en quelques lignes mon menu puis de partir chercher les bouts de programmes que je veux lancer, je dois mettre mon code direct dans mon menu.
Enfin pour faire clair, si je veux avoir un menu pour choisir entre "afficher une fleur" et ouvrir un menu de configuration, je peux pas faire un truc comme ça:
If var=1{
cout << "text 1 << endl;
goto afficherfleur
var=2
cout << "config" << endl;
goto menuconfig
}
Mais je devrais faire un truc comme:
If var=1 {
cout << "text 1 << endl;
*tout mon code d'affichage de fleur*
break;
var=2
cout << "config" << endl;
*tout mon code d'affichage de configuration.
break;
}
Ou j'ai pas chercher trouver le bon endroit pour mes exemples de code ou j'ai encore des sales habitude de batch, enfin du regle comment ce genre de trucs toi? |
|
Revenir en haut de page
|
|
Dysperia
Inscrit le: 16 Mai 2011 Messages: 89
|
Posté le : Mer Sep 03, 2014 3:51 pm Sujet du message : |
|
|
j'ai besoin de 2 infos avant t'es pas assez précis. Ca ressemble à du C donc je me dis que c'est le langage que tu essais d'utiliser là. Ensuite il y a un truc que je n'ai pas compris. Tu veux un menu avec des options puis lancer des fonctions suivant le choix de l'utilisateur ou afficher le menu en cours et lancer le code associé à ce menu ?
Edit : dans le premier cas je ferai quelque chose comme ça :
Code : |
#include <iostream>
#include <string>
using namespace std;
void afficher_choix(char choix)
{
string str = {choix, '\0'};
cout << "Votre choix est le : " + str << endl;
}
int main()
{
// On affiche les différentes options possibles
cout << "1 -> Afficher une fleur" << endl;
cout << "2 -> Configurer\n"; // "\n" et "<< endl" donne tout deux un retour à la ligne
cout << "3 -> Quitter\n";
// On récupère le choix du joueur dans une variable
// Initialisation à 0 de la variable utilisée pour récupérer le choix
char choix = '0';
// Boucle qui demande un choix tant que l'une des options n'a pas été choisie
while (choix != '1' && choix != '2' && choix != '3')
{
// On demande à l'utilisateur de faire un choix
cout << "\nChoississez une option : ";
// On récupère la ligne entrée par l'utilisateur dans une chaine de caractère
string entree("0");
getline(cin, entree);
// Si une seule lettre qui est 1 ou 2 ou 3, on la prend comme choix
if (entree == "1" || entree == "2" || entree == "3")
{
choix = entree[0];
}
// Sinon on met choix à 0 pour recommencer la boucle et on écrit un message
else
{
cout << "S'il vous plait, tapez 1, 2 ou 3.";
choix = '0';
}
}
// On est sortie de la boucle si choix vaut 1, 2 ou 3 et rien d'autre
// Il faut maintenant appeler les fonctions en fonction du choix fait
if (choix == '1')
{
afficher_choix(choix);
}
else if (choix == '2')
{
afficher_choix(choix);
}
}
|
Aussi n'hésite pas aller sur la chatbox si je suis co dessus y'a pas de souci elle est là pour ça |
|
Revenir en haut de page
|
|
Silenc3
Inscrit le: 05 Aoû 2014 Messages: 11
|
Posté le : Lun Sep 08, 2014 4:17 pm Sujet du message : |
|
|
Merci d'avoir si bien commenté ton code parce que j'ai vraiment du mal ^^
C'est chiant ce truc d'initialisation faut vraiment penser a tout ce que fait ta "class" sinon t'es mort.
Je vais finir par me rabattre sur le basic ou un truc du genre. |
|
Revenir en haut de page
|
|
Dysperia
Inscrit le: 16 Mai 2011 Messages: 89
|
Posté le : Lun Sep 08, 2014 6:29 pm Sujet du message : |
|
|
kikou,
Si tu trouve que le C est trop proche de la machine, tu peux apprendre un langage de bien plus haut niveau. Regarde du côté de jave ou python, tu trouveras plus ton bonheur je pense Le programme que je t'ai fait en exemple est plus court et plus simple en python par exemple. Le c est utile quand tu as besoin d'accéder en bas niveau à ta machine, de gérer la mémoire ou encore quand la vitesse de ton programme est très importante.
En java et python, tu vas avoir plus l'impression d'écrire ce que tu penses et ça paraîtra moins dur à apprendre je pense. Je me souviens avoir trouvé le tuto python du site du zero (appelé openclassroom maintenant) très bon.
A toi de choisir ce qui te convient, plus tu auras plaisir à programmer et plus il te sera facile d'apprendre ! |
|
Revenir en haut de page
|
|
Silenc3
Inscrit le: 05 Aoû 2014 Messages: 11
|
Posté le : Mar Sep 09, 2014 4:41 pm Sujet du message : |
|
|
Peut etre enfin j'ai regarder quelques codes en Java et c'est pas plus clair.
Le python peut etre.
Pour tout te dire j'ai l'impression que dans la doc on passe du tres simple au touffu sans étape. |
|
Revenir en haut de page
|
|
Dysperia
Inscrit le: 16 Mai 2011 Messages: 89
|
|
Revenir en haut de page
|
|