Volver menú revistas Volver página anterior

El Amiga Me Encanta ha conseguido el permiso por escrito de IDG Comunications España para ofrecer los artículos de la revista Amiga World España.

N° 46 - Septiembre 1993

CURSO DE AREXX (8ª PARTE)


Por Jesús Diez

En este capítulo del curso de ARexx empezaremos a ver una por una todas las funciones de este potente lenguaje. En primer lujar, después del nombre de cada función podemos ver su forma de uso y debajo la descripción de la función con todos sus parámetros. En las funciones que devuelven el valor bool 1 significa verdadero y 0 falso. en el disco del mes pasado se incluye una guía rápida del ARexx.


ABBREV

boll=ABBREV(str,abbr,[len])
Comprueba si el parámetro abbr es una abreviatura de la cadena str. El parámetro opcional len indica el número mínimo de caracteres que tienen que coincidir para que se de por válida la abreviatura.

ABS

val=ABS(num)
Devuelve en val el valor absoluto de num.

ADDLIB

ADDLIB(name,pri,[offset,version])
Añade la librería name a la lista de librerías con la prioridad pri.

ADDRESS

host=ADDRESS()
Devuelve el host el puerto activo.

ALLOCMEM

mem=ALLOCMEM(size,[type])
Reserva size bytes de memoria. En la variable mem devuelve la dirección del bloque reservado. En type podemos especificar el tipo de memoria requerida (Chip, Fast...)

ARG

numargs=ARG()
argn=ARG(num)
bool=ARG(num,mode)
Esta función tiene 3 formas de uso. En la primera la función devuelve en numargs el número de argumentos que se escribieron al invocar el macro. La segunda forma devuelve el argn el argumento número num de la llamada al macro. Por último la tercera forma comprueba si el argumento número num existe o no.

B2C

s=B2C(binstr)
Devuelve en s el caracter ASCII equivalente al número binario binstr.

BADDR

addr=BADDR(bptr)
Convierte el número bptr en dirección.

BITAND

s=BITAND(str1,[str2],[pad])
Devuelve en s el resultado de la operación lógica AND entre str1 y str2.

BITCHG

s=BITCHG(str1,n)
Cambia el bit número n de la cadena str1. Devuelve en s el resultado.

BITCLR

s=BITCLR(str1,n)
Pone a 0 el bit número n de la cadena str1. Devuelve en s el resultado.

BITCOMP

s=BITCOMP(str1,[str2],[pad])
Compara las cadenas str1 y str2 bit a bit.

BITOR

s=BITOR(str1,[str2],[pad])
Devuelve en s el resultado de la operación lógica OR entre str1 y str2.

BITSET

s=BITSET(str1,n)
Pone a uno el bit nímero n de la cadena str1. Devuelve en s el resultado.

BITTST

bool=BITTST(str,n)
Comprueba el estado del bit n en la cadena str. En bool devuelve el estado del bit: 0 ó 1.

BITXOR

s=BITXOR(str1,[str2],[pad])
Devuelve en s el resultado de la operación lógica XOR entre str1 y str2.

C2B

b=C2B(str)
Convierte el caracter ASCII de str a binario, devolviendo el resultado en b.

C2D

n=C2D(str,[len])
Convierte el caracter ASCII de str a decimal, devolviendo el resultado en n.

C2X

h=C2X(str)
Convierte el caracter ASCII de str a hexadecimal, devolviendo el resultado en h.

CENTER

s=CENTER(str1,width,[pad])
Devuelve en s una cadena compuesta por la cadena str1 precedida por el número de espacios necesarios para centrar la cadena en el espacio indicado en width. En el parámetro opcional pad se puede especificar otro caracter distinto con el que rellenar el espacio sobrante.

CENTRE

s=CENTRE(str1,width,[pad])
Igual que CENTER.

CLOSE

bool=CLOSE(file)
Cierra el fichero file. Devuelveel valor 0 si no se pudo cerrar el fichero.

CLOSEPORT

bool=CLOSEPORT(portname)
Cierra el puerto de mensajes portname. Devuelve el valor 0 si no se pudo cerrar el puerto de mensajes.

COMPARE

n=COMPARE(str1,str2,[pad])
Compara las dos cadenas str1 y str2. El resultado en n es la posición del primer caracter que no coincide o cero si las cadenas son iguales.

COMPRESS

s=COMPRESS(str,[list])
Borra de la cadena str los caracteres especificados en list. Si en list no se especifica ninguno la función eliminará los espacios.

COPIES

s=COPIES(str,n)
Devuelve en s la cadena str copiada n veces.

D2C

s=D2C(num,[count])
Devuelve la cadena correspondiente al número num. El número puede ser cualquier entero en el rango 0 a 2147483647, esto es, 32 bits. En un entero de 32 bits hay 4 caracteres. En el resultado odemos extraer los que queramos, empezando por el final especificando cuantos en el parámetro count.

D2X

h=D2X(num,[count])
Convierte en número decimal num en hexadecimal. Se puede especificar el número de dígitos del resultado en el parámetro count.

DATATYPE

type=DATATYPE(str)
bool=DATATYPE(str,mode)
Tiene dos formas de uso: La primera devuelve en type el tipo de la cadena str. En la segunda comprobamos si la cadena es del tipo especificado en mode.

DATE

d=DATE([outmode],[inside],[inmode])
Devuelve la fecha en el formato especificado en outmode.

DELAY

0=DELAY(n)
Hace una pausa. En n especificamos la duración de la pausa en cincuentaavos de segundo (50=1seg).

DELETE

bool=DELETE(name)
Borra el fichero o el directorio vacío name. Si por cualquier causa no puede realizar la operación, devuelve 0 en bool.

DELSTR

s=DELSTR(str,start,[len])
En la cadena str borra desde el caracter en la posición start hasta el final o hasta el número de caracteres especificado en len.

DELWORD

s=DELWORD(str,start,[len])
En la cadena str borra desde la palabra de la posición start hasta el final o hasta el número de palabras especificado en len.

DIGITS

n=DIGITS()
Devuelve el número máximo de dígitos especificados para las salidas de las operaciones numéricas.

EOF

bool=EOF(file)
Comprueba si ha llegado el final del fichero file.

ERRORTEXT

text=ERRORTEXT(n)
Devuelve la descripción del error sintáctico especificado en n.

EXISTS

bool=EXISTS(name)
Comprueba si existe el fichero o el directorio especificado en name.

EXPORT

count=EXPORT(addr,[str],[maxlen],[pad)
Copia la cadena str en un bloque de memoria en la dirección addr. En maxlen especificamos la longitud máxima del bloque de memoria y en pad el caracter con el que se rellenará el espacio libre.

FIND

n=FIND(str,phr)
Devuelve en n la posición de la palabra o frase phr en la cadena str. Si no la encuentra devuelve 0.

FORBID

count=FORBID()
Desactiva la multitarea.

FORM

f=FORM()
Devuelve el formato numérico actual.

FREEMEM

1=FREEMEM(addr,size)
Libera el bloque de memoria de la dirección addr, de longitud size.

FREESPACE

n=FREESPACE()
n=FREESPACE(addr,size)
En su primera forma devuelve en n la cantidad de memoria usada por ARexx. En la segunda libera el bloque de la dirección addr, de longitud size.

FUZZ

f=FUZZ()
Devuelve el formato numérico actual.

GETARG

arg=GETARG(packet,[whicharg])
Obtiene un argumento de un paquete de mensaje.

GETCLIP

s=GETCLIP(clip)
Devuelve en s la cadena asociada a clip con SETCLIP.

GETPKT

pkt=GETPKT(portname)
Captura un paquete de mensaje del puerto de mensajes.

GETSPACE

addr=GETSPACE(size)
Reserva un bloque de memoria de size bytes de longitud dentro de la memoria que usa el ARexx. En la variable addr devuelve la dirección del bloque.


Volver menú revistas Volver página anterior