comando estruturar
Propósito
Traduz um programa FORTRAN em um programa de RATFOR.
Sintaxe
estruturar [ -s ] [ -i ] [ -a ] [ -b ] [ -n ] [ -tNúmero ] [ -cNúmero ] [ -eNúmero ] [ Arquivo ]
Descrição
O comando estruturar traduz o programa FORTRAN especificado por Arquivo (padrão de entrada padrão) em um programa de RATFOR. Sempre que possível, as construções de controle RATFOR substituem o FORTRAN original. Números de declaração aparecem apenas onde ainda é necessário. Mudanças cosméticas são feitas, incluindo alteração de strings Hollerith em strings citadas e operadores relacionais em símbolos (por exemplo, .GT. em >). A saída é adequadamente recuada.
O comando estruturar conhece a sintaxe FORTRAN 66, mas não completa FORTRAN 77. Se um programa FORTRAN de entrada contém identificadores que são palavras reservadas no RATFOR, a versão estruturada do programa não será um programa RATFOR válido. Os rótulos gerados não podem ir acima de 32767. Se você receber uma instrução goto sem um destino, tente usar o sinalizador -e.
Sinalizações
| Item | Descrição |
|---|---|
| -A | Transforme seqüências de else-se instruções em um comutador não-RATFOR do formulário:Os predicados caso são testados em ordem. O código adequado a apenas um caso é executado. Esta forma generalizada de instrução switch não ocorre no RATFOR. |
| -b | Gera instruções goto em vez de instruções de vários níveis quebra . |
| -c Número | Incrementa etiquetas sucessivas no programa de saída pelo número inteiro nonzero Número. O padrão é 1. Não insira um espaço entre -c e Número. |
| -e Número | Se Número for 0 (padrão), coloque código dentro de um loop somente se ele puder levar a uma iteração do loop. Não insira um espaço entre -e e Número. |
| -i | Não transforme instruções goto computadas em comutadores. (RATFOR não transforma switches de volta em instruções goto computadas.) |
| -n | Gera instruções goto em vez de instruções de vários níveis próximo . |
| -S | A entrada é aceita em formato padrão. Os comentários são especificados por um c, Cou * na coluna 1, e as linhas de continuação são especificadas por um caractere nonzero, não em branco na coluna 6. Entrada está no formulário aceito pelo comando f77 . |
| -t Número | Torna o inteiro nonzero Número o rótulo mais baixo avaliado no programa de saída. O padrão é 10. Não insira um espaço entre -t e Número. |
Se Número for nonzero, admita pequenos segmentos de código a um loop se caso contrário o loop teria saídas para vários lugares incluindo o segmento, e o segmento pode ser alcançado apenas a partir do loop. Nesse caso, pequeno é próximo, mas não igual a, o número de instruções no segmento de código. Valores de Número menores de 10 são sugeridos.
Exemplos
Para traduzir otest.fPrograma FORTRAN nonewtest.ratforPrograma RATFOR, digite:
struct -s -i -n -t2 test.f > newtest.ratforArquivos
| Item | Descrição |
|---|---|
| /tmp/struct* | Arquivos temporários utilizados durante o processamento do comando estruturar . |
| /usr/lib/struct/structure | Arquivo que manipula o processamento para o comando estruturar . |
| /usr/lib/struct/beautify | Arquivo que manipula o processamento para o comando estruturar . |
| /usr/ucb/struct | Contém o comando estruturar . |