Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1338 connectés 

 

Sujet(s) à lire :
    - Who's who@Programmation
 

 Mot :   Pseudo :  
  Aller à la page :
 
 Page :   1  2  3  4  5  ..  5658  5659  5660  ..  26235  26236  26237  26238  26239  26240
Auteur Sujet :

[blabla@hosto] Le topic des vieux

n°899759
Terminapor
I'll see you rise.
Posté le 16-11-2004 à 12:32:30  profilanswer
 

Reprise du message précédent :

chrisbk a écrit :

putain + chier + epicier


pour ...

mood
Publicité
Posté le 16-11-2004 à 12:32:30  profilanswer
 

n°899763
the real m​oins moins
Posté le 16-11-2004 à 12:43:47  profilanswer
 

uriel a écrit :

on va changer mon iBook par un PowerG4 [:cyriadis]

:pfff: pourras pas dire que je t'avais pas prévenu...


Message édité par the real moins moins le 16-11-2004 à 12:43:58
n°899767
Terminapor
I'll see you rise.
Posté le 16-11-2004 à 12:50:47  profilanswer
 

uriel a écrit :

Denn das ist mein Teil


 [:autobot]

n°899768
chrisbk
-
Posté le 16-11-2004 à 13:03:25  profilanswer
 

mais de la boue, voila quoi, de la boue !

n°899789
the real m​oins moins
Posté le 16-11-2004 à 13:38:46  profilanswer
 

EN ROUGE ET NOIR
J'EXILERAI MA PEUR
J'IRAI PLUS HAUT QUE CES MONTAGNES DE DOULEUR
EN ROUUUUGE ET NOIII-IIR
 
 
 
 
 
 
 
(putain, chaud au boulot aujourd'hui, si j'avais mon apn et si j'osais, jvous ferais une photo, mais ça s'approche méchamment de [:maitresse] [:huit])

n°899793
mareek
Et de 3 \o/
Posté le 16-11-2004 à 13:50:47  profilanswer
 

walli a écrit :

bonjour la bonne humeur :lol:
yo les gens [:dawa]


C'est toujours comme ça les lundis [:zytra]


---------------
"I wonder if the internal negative pressure in self pumping toothpaste tubes is adjusted for different market altitudes." John Carmack
n°899794
mareek
Et de 3 \o/
Posté le 16-11-2004 à 13:51:15  profilanswer
 


PAN


---------------
"I wonder if the internal negative pressure in self pumping toothpaste tubes is adjusted for different market altitudes." John Carmack
n°899795
walli
Posté le 16-11-2004 à 13:53:22  profilanswer
 

mareek a écrit :

C'est toujours comme ça les lundis [:zytra]


 
[:gratgrat]...on m'aurait menti :??: [:dawa]


---------------
NP :
n°899796
walli
Posté le 16-11-2004 à 13:54:12  profilanswer
 

the real moins moins a écrit :

EN ROUGE ET NOIR
J'EXILERAI MA PEUR
J'IRAI PLUS HAUT QUE CES MONTAGNES DE DOULEUR
EN ROUUUUGE ET NOIII-IIR
 
 
 
 
 
 
 
(putain, chaud au boulot aujourd'hui, si j'avais mon apn et si j'osais, jvous ferais une photo, mais ça s'approche méchamment de [:maitresse] [:huit])


 
Mais de quoi tu parles [:totoz]


Message édité par walli le 16-11-2004 à 13:54:39

---------------
NP :
n°899797
skeye
Posté le 16-11-2004 à 13:54:34  profilanswer
 

Raaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaah mais c'est quoi ces étudiants sans adresse? :fou:


---------------
Can't buy what I want because it's free -
mood
Publicité
Posté le 16-11-2004 à 13:54:34  profilanswer
 

n°899798
the real m​oins moins
Posté le 16-11-2004 à 13:55:09  profilanswer
 

walli a écrit :

Mais de quoi tu parles [:totoz]

a ton avis [:djswad]

n°899799
the real m​oins moins
Posté le 16-11-2004 à 13:55:14  profilanswer
 

If I had to live my life without you near me
The days would all be empty
The nights would seem so long
With you I see forever oh so clearly
I might have been in love before
But it never felt this strong
Our dreams are young and we both know
They'll take us where we want to go
Hold me now, touch me now
I don't want to live without you
 
CHORUS:
Nothing's gonna change my love for you
You ought to know by now how much I love you
One thing you can be sure of
I'll never ask for more than your love
Nothing's gonna change my love for you
You ought to know by now how much I love you
The world may change my whole life through
But nothing's gonna change my love for you
 
If the road ahead is not so easy
Our love will lead a way for us
Like a guiding star
I'll be there for you if you should need me
You don't have to change a thing
I love you just the way you are
So come with me and share the view
I'll help you see forever too
Hold me now, touch me now
I don't want to live without you
 
CHORUS

n°899800
the real m​oins moins
Posté le 16-11-2004 à 13:55:35  profilanswer
 

(c'est avec plaisir que je vous met cette chanson en tête pour le reste de la journée)

n°899801
drasche
Posté le 16-11-2004 à 13:56:03  profilanswer
 

walli a écrit :

Mais de quoi tu parles [:totoz]


Je pense qu'il veut nous faire partager la vision quasi-érotique qu'il a d'une de ses collègues? [:opus dei]


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
n°899802
drasche
Posté le 16-11-2004 à 13:58:12  profilanswer
 

the real moins moins a écrit :

(c'est avec plaisir que je vous met cette chanson en tête pour le reste de la journée)


Ne me dis pas que c'est Glenn Medeiros quand même? [:totoz]
edit: si [:ddr555]


Message édité par drasche le 16-11-2004 à 13:58:42

---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
n°899803
mareek
Et de 3 \o/
Posté le 16-11-2004 à 14:01:16  profilanswer
 

chrisbk a écrit :

putain + chier + epicier


=porno scatophile amateur ? [:opus dei]


---------------
"I wonder if the internal negative pressure in self pumping toothpaste tubes is adjusted for different market altitudes." John Carmack
n°899805
the real m​oins moins
Posté le 16-11-2004 à 14:11:19  profilanswer
 

putaaaaain mais elles m'excitent, toutes là, avec leurs bottes  [:atigrou]


Message édité par the real moins moins le 16-11-2004 à 14:11:32
n°899808
mareek
Et de 3 \o/
Posté le 16-11-2004 à 14:14:13  profilanswer
 

the real moins moins a écrit :

putaaaaain mais elles m'excitent, toutes là, avec leurs bottes  [:atigrou]


webcam :o


---------------
"I wonder if the internal negative pressure in self pumping toothpaste tubes is adjusted for different market altitudes." John Carmack
n°899809
chrisbk
-
Posté le 16-11-2004 à 14:21:21  profilanswer
 

Messieurs dans le cours du jour sera : comment faire des delegates en C++.
 
Le probleme que nous avons tous rencontré un jour, c'est une fonction demandant une Callback en entrée dans la main gauche, et une fonction membre qui serait parfaite pour ce role dans l'autre.
Drame : ca ne marche pas, car une fonction membre C++ demande en plus le 'this' de l'objet.
 
Que faire ? L'idéal serait un truc a la c#, un pointeur de fonction comprenant aussi le this, mais le tout sous forme d'unique pointeur de fonction. La technique decrite ici, que j'appelerais technique Colgate car j'ai eu l'idée en me brossant les dents, repond a ses attentes grace au "dynamic code generation" que j'ecris en anglais car l'anglais, ca poutre plus.
 
l'idée est d'intercaler entre un pointeur de fonction et la cible un code intermediaire servant a rebondir vers la cible. Ledit code intermediaire comprends simplement deux instructions asm fort banale : mov et jmp.
 

Code :
  1. 0xaddr   mov ecx, thisDeL'objet
  2. 0xaddr2  jmp (addresseFonctionMembre - addr2)


 
C'est tout.
 
Par convention le this est generalement foutu dans ecx, donc on le fait, et on fait un jmp a la place d'un call pour pas changer la pile. le jmp prends une valeur relative donc on la recalcule en live.
 
Le plus rigolo, c'est que, vive le C++, on peut tout balancer ca dans une...structure, sans toucher du tout a l'asm, ou peu.
 

Code :
  1. #pragma pack(1) //Important de faire sauter l'alignement, sinon le code de la structure va etre pourri
  2. struct Delegate
  3. {
  4. public:
  5.   Delegate(void *tThis, void *addrFonction)
  6.   {
  7.      movOpcode1 = ...; //remplacer ici par les bons opcodes, je les ai pas sous la main
  8.      movOpcode2 = ...;
  9.      thisPtr    = tThis;
  10.      jmpopcode  = ...;
  11.      disp = (unsigned int)addrFonction - (unsigned int)(&jmpOpcode);
  12.   }
  13. private:
  14.   unsigned char movOpcode1;
  15.   unsigned char movOpcode2;
  16.   unsigned int  thisPtr;
  17.   unsigned char jmpopcode;
  18.   unsigned int disp;
  19. }
  20. #pragma pack()


 
et voila le travail.
le probleme est de retrouver l'adresse de la fonction membre sous forme de void *, taz avait refilé une interessante solution a coup d'union. On peut meme rajouter une couche de template par dessus, et la, vla le bonheur :

Code :
  1. #pragma pack(1)
  2. template<typename T>
  3. struct Delegate
  4. {
  5. public:
  6.   Delegate(void *tThis, T fonction)
  7.   {
  8.      union truc
  9.      {
  10.         T fonction2;
  11.         unsigned int addr;
  12.      }
  13.      truc machin;
  14.      machin.fonction = fonction;
  15.      movOpcode1 = ...;
  16.      movOpcode2 = ...;
  17.      thisPtr    = tThis;
  18.      jmpopcode  = ...;
  19.      disp = truc.addr - (unsigned int)(&jmpOpcode);
  20.   }
  21. private:
  22.   unsigned char movOpcode1;
  23.   unsigned char movOpcode2;
  24.   unsigned int  thisPtr;
  25.   unsigned char jmpopcode;
  26.   unsigned int disp;
  27. }
  28. #pragma pack()
  29. ...
  30. class A
  31. {
  32. public:
  33.   void prout() {std::cout<<"maman, caca "<<toto;}
  34.   int toto;
  35. };
  36. typedef __stdcall void (*truc) MaFonction;
  37. A *bidule = new A;
  38. Delegate del = new Delegate(bidule, A::prout);
  39. MaFonction chose = (MaFonction) &del;
  40. chose();


 
 
Pour ensuite utiliser ca comme callback, il suffit de caster l'adresse de cette structure en pointeur de fonction (si, si) et vala
 
enfin j'ai pas encore essayé mais ca devrait marcher au poil
 
merci de votre attention


Message édité par chrisbk le 16-11-2004 à 14:24:29

---------------
NP: HTTP Error 764 Stupid coder found
n°899810
gizmo
Posté le 16-11-2004 à 14:21:31  profilanswer
 

'tain mais chier, faire un moteur de complétion sans grammaire c'est trop la merde [:benou]

n°899813
fabien
Vive la super 5 !
Posté le 16-11-2004 à 14:29:58  profilanswer
 

salut tout le monde !
 
comment on fait pour remplir une ligne d'un tableau avec une chaine de caractere en C ?
 
je fais ca, et ca marche pas .
 

Code :
  1. char nom1[50],nom2[50],nom3[50],temp[50],tab[3][50];
  2.       int permut,i;
  3.       printf("\n donner nom1" );
  4.       scanf("%s", nom1);
  5.       printf("\n donner nom2" );
  6.       scanf("%s", nom2);
  7.       printf("\n donner nom3" );
  8.       scanf("%s", nom3);
  9.       strcpy(tab[0],nom1);
  10.       strcpy(tab[1],nom2);
  11.       strcpy(tab[2],nom3);


 


---------------
Découvre le HFRcoin ✈ - smilies
n°899820
Dion
Acceuil
Posté le 16-11-2004 à 14:38:55  profilanswer
 

Fabien a écrit :

salut tout le monde !
 
comment on fait pour remplir une ligne d'un tableau avec une chaine de caractere en C ?
 
je fais ca, et ca marche pas .
 

Code :
  1. char nom1[50],nom2[50],nom3[50],temp[50],tab[3][50];
  2.       int permut,i;
  3.       printf("\n donner nom1" );
  4.       scanf("%s", nom1);
  5.       printf("\n donner nom2" );
  6.       scanf("%s", nom2);
  7.       printf("\n donner nom3" );
  8.       scanf("%s", nom3);
  9.       strcpy(tab[0],nom1);
  10.       strcpy(tab[1],nom2);
  11.       strcpy(tab[2],nom3);




 
Je fais mon Taz ou pas ? Parce qu'entre les tableaux en dur et les scanf   [:zerod]


---------------
When it comes to business/legal topics, just assume almost everyone commenting has no idea what they’re taking about and have no background in these subjects because that’s how it really is. Harkonnen 8-> Elmoricq 8====>
n°899822
Profil sup​primé
Posté le 16-11-2004 à 14:41:44  answer
 

il est mort simo? [:zytrasnif]

n°899827
fabien
Vive la super 5 !
Posté le 16-11-2004 à 14:54:31  profilanswer
 

Dion a écrit :

Je fais mon Taz ou pas ? Parce qu'entre les tableaux en dur et les scanf   [:zerod]

un taz ca suffit :o
 
donne moi plutot la solution :o
 


---------------
Découvre le HFRcoin ✈ - smilies
n°899829
Lam's
Profil: bas.
Posté le 16-11-2004 à 15:00:13  profilanswer
 

chrisbk a écrit :

enfin j'ai pas encore essayé mais ca devrait marcher au poil


 
Pas pour très longtemps: http://support.microsoft.com/kb/875352

n°899832
drasche
Posté le 16-11-2004 à 15:11:17  profilanswer
 

Fabien a écrit :

un taz ca suffit :o
 
donne moi plutot la solution :o


je crois que finalement, un seul Taz ne suffit pas :o
 
Essaie toujours de sortir ça à Taz pour voir comment il va te répondre :D


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
n°899834
uriel
blood pt.2
Posté le 16-11-2004 à 15:13:20  profilanswer
 

the real moins moins a écrit :

:pfff: pourras pas dire que je t'avais pas prévenu...


 
suis pas un poissard moi [:jagstang]


---------------
IVG en france
n°899835
Moktar1er
No one replies...
Posté le 16-11-2004 à 15:14:32  profilanswer
 

Dion a écrit :

Je fais mon Taz ou pas ? Parce qu'entre les tableaux en dur et les scanf   [:zerod]


Moi j'aime pas les \n en début de printf :o

n°899836
skeye
Posté le 16-11-2004 à 15:14:34  profilanswer
 

Fabien a écrit :

salut tout le monde !
 
comment on fait pour remplir une ligne d'un tableau avec une chaine de caractere en C ?
 
je fais ca, et ca marche pas .
 

Code :
  1. char nom1[50],nom2[50],nom3[50],temp[50],tab[3][50];
  2.       int permut,i;
  3.       printf("\n donner nom1" );
  4.       scanf("%s", nom1);
  5.       printf("\n donner nom2" );
  6.       scanf("%s", nom2);
  7.       printf("\n donner nom3" );
  8.       scanf("%s", nom3);
  9.       strcpy(tab[0],nom1);
  10.       strcpy(tab[1],nom2);
  11.       strcpy(tab[2],nom3);




 

Fabien a écrit :

un taz ca suffit :o
 
donne moi plutot la solution :o


 
 
[:rofl2]


---------------
Can't buy what I want because it's free -
n°899838
chrisbk
-
Posté le 16-11-2004 à 15:15:47  profilanswer
 


 
boaf, c'est pas un pb, suffit de se faire une fonction allouant la structure dans une plage mémoire flaggé comme executable


Message édité par chrisbk le 16-11-2004 à 15:16:00

---------------
NP: HTTP Error 764 Stupid coder found
n°899839
uriel
blood pt.2
Posté le 16-11-2004 à 15:15:54  profilanswer
 

y a pas comme un probleme de drapo la :heink:
 
edit: je me retrouve en haut de page a chaque fois


Message édité par uriel le 16-11-2004 à 15:16:17

---------------
IVG en france
n°899841
skeye
Posté le 16-11-2004 à 15:18:46  profilanswer
 

uriel a écrit :

y a pas comme un probleme de drapo la :heink:
 
edit: je me retrouve en haut de page a chaque fois


sinon ya du delete...[:dawa]


Message édité par skeye le 16-11-2004 à 15:18:53

---------------
Can't buy what I want because it's free -
n°899842
uriel
blood pt.2
Posté le 16-11-2004 à 15:19:29  profilanswer
 

skeye a écrit :

sinon ya du delete...[:dawa]


 
[:the time]


---------------
IVG en france
n°899843
lorill
Posté le 16-11-2004 à 15:19:44  profilanswer
 

chrisbk a écrit :

boaf, c'est pas un pb, suffit de se faire une fonction allouant la structure dans une plage mémoire flaggé comme executable


si c'est aussi simple a contourner que tu le dis, ou est l'interet ?

n°899844
skeye
Posté le 16-11-2004 à 15:20:24  profilanswer
 


quand ya du delete sur les derniers posts ça fait merder les drapos, ils savent plus où aller...:o


---------------
Can't buy what I want because it's free -
n°899845
uriel
blood pt.2
Posté le 16-11-2004 à 15:21:41  profilanswer
 

skeye a écrit :

quand ya du delete sur les derniers posts ça fait merder les drapos, ils savent plus où aller...:o


 
ah ok :D
 :jap:


---------------
IVG en france
n°899846
fabien
Vive la super 5 !
Posté le 16-11-2004 à 15:21:43  profilanswer
 

drasche a écrit :

je crois que finalement, un seul Taz ne suffit pas :o
 
Essaie toujours de sortir ça à Taz pour voir comment il va te répondre :D

ben je sais pas, je vois pas d'autre solution moi [:gratgrat]
 
c'est pas bon, comme je fais ?


Message édité par fabien le 16-11-2004 à 15:22:16

---------------
Découvre le HFRcoin ✈ - smilies
n°899847
chrisbk
-
Posté le 16-11-2004 à 15:21:49  profilanswer
 

lorill a écrit :

si c'est aussi simple a contourner que tu le dis, ou est l'interet ?


 
Bin generalement tu alloue pas ce genre de plage mémoire (les new/malloc du C++ le font pas).


---------------
NP: HTTP Error 764 Stupid coder found
n°899849
uriel
blood pt.2
Posté le 16-11-2004 à 15:22:04  profilanswer
 

http://www.tolo-serv.net/Smileys/Ounet/kapukapounet.gif bah non


---------------
IVG en france
n°899852
lorill
Posté le 16-11-2004 à 15:23:41  profilanswer
 
n°899853
lorill
Posté le 16-11-2004 à 15:24:26  profilanswer
 

chrisbk a écrit :

Bin generalement tu alloue pas ce genre de plage mémoire (les new/malloc du C++ le font pas).


ouais ok, c'est plus une protection contre le depassement de buffer que contre les virus & autres codes etranges.
 
dans ce cas, oui  [:sinclaire]

mood
Publicité
Posté le   profilanswer
 

 Page :   1  2  3  4  5  ..  5658  5659  5660  ..  26235  26236  26237  26238  26239  26240

Aller à :
Ajouter une réponse
 

Sujets relatifs
Plus de sujets relatifs à : [blabla@hosto] Le topic des vieux


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR