Bonjour à tous,
Je viens à vous car je rencontre un petit problème à laquelle je ne trouve ni explication, ni solution:
Je possède deux scripts dont l'un crée juste une variable en mémoire et me renvoie son adresse ainsi que son PID.

Terminal A:
Address : 0x7ffd77bbb4bc
Valeur : 52
My process ID : 9199
Le second script à pour but de récupérer cette valeur en se liant au processus via la fonction ptrace (sys/ptrace.h).
Tout fonctionne merveilleusement bien lorsqu'il s'agit de récupérer un entier.

Terminal B:
Processus attaché !
Valeur : 52
Cependant lorsque je change mes types entiers en réels (float par exemple) dans les deux fonctions, la magie cesse d'opérer et je ne comprend pas pourquoi;

Terminal A:
Address : 0x7ffe68f4e38c
Valeur : 5.20
My process ID : 9308
Terminal B:
Processus attaché !
Valeur : 7562919813157224448.000000
Je récupère mon nombre avec le code suivant:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
float a =ptrace(PTRACE_PEEKDATA,child,addr,NULL);
printf("Valeur : %f\n",a);
Quelqu'un aurait-il l’amabilité m'expliquer d’où vient ce problème ? (Je précise que je suis pas un pro au cas ou).
Merci de votre aide.