Manipuler du texte avec des numéros de lignes

Description

Bonjour,
Les routines fournissent un langage basique pour manipuler du texte.
Elles sont dans une librairie,le code est fourni.
Elles créent un tableau de QWORD pour chaque ligne.
Chaque qword contient l'adresse de la ligne et sa taille.
C'est ce qui permet de les retrouver par un numéro.
Le principal avantage de cette méthode est de limiter les scrutations .
SSE2 est utilisé pour créer ce tableau (plus rapide).
Un exemple d'utilisation est fourni.Il essaye de lire le
masm32includewindows.inc.
La mémoire allouée garantit un fichier terminé par zéro et au minimum
16 bytes libres.Içi le calcul de la taille allouée.
mov ecx,InfosFichiers.nFileSizeLow ;taille du fichier
inc ecx ;pour rajouter le zero en fin de fichier
add ecx,32 ;mmx utilise des registres de 16 bytes
and ecx,0FFFFFFF0h ;rounded 16 bytes upper
invoke GlobalAlloc,GMEM_MOVEABLE or GMEM_ZEROINIT,ecx
Executer texte.exe dans le disque contenant masm32 ou changer le nom du
fichier chargé.
OUTPUT:

There is 26902 lines in windows.inc
The bigger line is the 6385,his size is 284 bytes
Reading lines from 100 to 116

pr23 ArgCount(23)
pr24 ArgCount(24)
pr25 ArgCount(25)

; ½½½½½½½½½½½½½½½½½½½½½½½½½½½½½½½½½½½½½½½½½½½½½½½½½½½½½½½½½½½½½½½½½½½½½½½½½

;;;; end macro

;;;; dtype

; ---------------------------
; C and C++ type definitions
; ---------------------------
CALLBACK typedef PROTO STDCALL
WINAPI typedef PROTO STDCALL

------ The reading is terminated -----------

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.