Macro : demande d'informations

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
Avatar de l’utilisateur
blendman
Messages : 2017
Inscription : sam. 19/févr./2011 12:46

Macro : demande d'informations

Message par blendman »

Salut

savez-vous si on peut faire ça et si oui, comment ?

Code : Tout sélectionner

Macro [
  (
EndMacro

Macro as integer
  .i
EndMacro

Macro rem
   ;
EndMacro
Comme vous l'aurez compris, j'aimerais pouvoir utiliser certains codes d'autres basics directement dans purebasic :)
Avatar de l’utilisateur
microdevweb
Messages : 1802
Inscription : mer. 29/juin/2011 14:11
Localisation : Belgique

Re: Macro : demande d'informations

Message par microdevweb »

Dans certaine conditions, cela peut fonctionné

Code : Tout sélectionner

Macro mB
  (
EndMacro
Macro mBB
      )
EndMacro
Macro mInteger
  .i
EndMacro

Macro rem(info)
   ;
EndMacro
OpenWindow(0,0,0,800,600,"teste macro",#PB_Window_SystemMenu|#PB_Window_ScreenCentered)
rem("teste")
val#mInteger=mB#50*2#mBB
Debug val
Repeat
      Event=WaitWindowEvent()
Until Event=#PB_Event_CloseWindow
Windows 10 64 bits PB: 5.70 ; 5.72 LST
Work at Centre Spatial de Liège
Avatar de l’utilisateur
blendman
Messages : 2017
Inscription : sam. 19/févr./2011 12:46

Re: Macro : demande d'informations

Message par blendman »

Pour le rem et then, j'ai trouvé des macros sur le forum anglais :

Code : Tout sélectionner

Macro Then(_stmt1_=,_stmt2_=,_stmt3_=,_stmt4_=,_stmt5_=,_stmt6_=,_stmt7_=,_stmt8_=,_stmt9_=,_stmt10_=)
  : _stmt1_ : _stmt2_ : _stmt3_ : _stmt4_ : _stmt5_ : _stmt6_ : _stmt7_ : _stmt8_ : _stmt9_ : _stmt10_ : EndIf
EndMacro
Macro REM(_text_)  
  : : : 
EndMacro
 
En fait, il me reste peu de choses que je ne parviens pas à remplacer par une macro, ce sont les caractères spéciaux :

Code : Tout sélectionner

; pour ceux-ci, c'est plus complexe
.length : je dois remplacer le terme en le plaçant avant le nom du tableau, donc, je pense le faire avec un petit programme.
.remove(i) : idem, je dois supprimer ce terme et carrément le remplacer par une procedure

; ceux-ci, j'aimerais les remplacer  le deuxième 
.       \
[       (  
]       )   
//      ;  

; là, il faut remplacer tout ce qui est entre les deux 
/*   
*/
Si j'évite d'utiliser // et /* et */, il me reste [ ] à trouver, ainsi que .length, .remove(i) et quelques bricoles ^^.
Répondre