portabilité linux vers windows - C - Programmation
Marsh Posté le 07-11-2005 à 22:12:58
ReplyMarsh Posté le 07-11-2005 à 22:21:38
ouais, enfin en pratique jtrouve fread moins relou a utiliser (hop, je detourne finement la conversation et gagne deux points pommes)
Marsh Posté le 07-11-2005 à 22:22:25
Je plussois le fread (technique de brossage de dos à mon avantage ^_^)
Marsh Posté le 08-11-2005 à 09:11:27
oki, merki bien pour vos propals, je looké ça je vous tiens, au couant, si amais vous avez d'autres idées, n'hésitez pas
Marsh Posté le 08-11-2005 à 11:41:58
bon, aucune nouveauté avec fread et fopen....dommage
Marsh Posté le 08-11-2005 à 12:07:46
neotunner a écrit : bon, aucune nouveauté avec fread et fopen....dommage |
Qu'est-ce que tu veux dire par là ?
Ces fonctions sont on ne peut plus standard.
Marsh Posté le 08-11-2005 à 12:12:14
ouais, krément je m'en doute qu'elles sont std, l'utilisation de ces fonctions sous linux et windows st exactement pareil, mais j'ai tjs ma sortie fantaisiste, cela signifie que le souci ne viens pas de là, je me posais la question des headers (les headers linux sont différents des headers windows, ça peux jouer?) ou bien il ne reste plus que les fonctions de hash qui ne se comporte pas correctement sous windows, je n'ai rien touché à ces fonctions...je sais pas ce qui se passe dites donc
Marsh Posté le 08-11-2005 à 15:31:49
neotunner a écrit : l'utilisation de ces fonctions sous linux et windows st exactement pareil, mais j'ai tjs ma sortie fantaisiste, cela signifie que le souci ne viens pas de là, je me posais la question des headers (les headers linux sont différents des headers windows, ça peux jouer?) ou bien il ne reste plus que les fonctions de hash qui ne se comporte pas correctement sous windows, je n'ai rien touché à ces fonctions...je sais pas ce qui se passe dites donc |
Poste ton code ou donne un lien. Tu fais peut être des choses pas portables...
Marsh Posté le 08-11-2005 à 16:05:33
oki, je vais mettre le code, tout ce qui est fonction de hash, je l'ai chopé sur le net, en fait j'ai juste arrangé la fonction calchash et posé un main pour balancer un fichier à la fonction calchash et pour récupéré le hash renvoyé par calchash:
Code :
|
voila la fonction calchash que j'ai mis à ma sauce, et le main pour l'utiliser et voir le résultat...
Code :
|
c'est la version qui tourne impeccable sous linux avec des petits et gros fichier
Voila, voila
Marsh Posté le 07-11-2005 à 16:32:16
Bonjour,
Pour un projet de mon stage, je fais une petite appli en C qui calcule le hash MD4 (version eDonkey) d'un fichier passé en paramètre et le sort dans une chaine de caractère, associé à cette fonctions, il ya bien sur les fonctions de calcul de hash que j'ai récupéré sur le net et un petit main histoire de donner le fichier à chercher et afficher le hash en sortie. Sous linux, ça compile et ça marche nickel, je doit faire cette appli pour qu'elle fonctionne sous windows (compilateur de visual studio (Vc++ 7.0.9955) après quq modif d'appel de librairies et fonctions basique de lecture (read -> _read, open ->_open), ça compile, ça s'exécute mais le hash deviens n'importe quoi!!!
En fait je me retrouve avec un hash de la sorte:
ABCDABCDEFGHEFGH (les 4 premier octets sont répétés une fois et les octets 9 à 12 sont répétés sur les 4 derniers)
ce pseudo hash est pris directe à au retour des fonctions de hashage
Je n'ai pas touché au code des fonctions de hashage
D'ou viendrais ce soucis? des librairies appelées ds le prgm st pas les mêmes sous vc++ et sous linux?
Mon linux: Mandrake 9.2 avec gcc 3.3.1
librairies appelées sous linux:
errno.h;fcntl.h;stdio.h,unistd.h,stdlib.h,string.h,sys/types.h,sys/stat.h
librairies appelées sous windows:
errno.h;fcntl.h;stdio.h,io.h,stdlib.h,string.h,sys/types.h,sys/stat.h
En fait ce sont les même sauf unistd remplacée par io
merki pour vos réponses
---------------
Vive le tunning