EngelsFransSpaans

Ad


OnWorks-favicon

bcpp - Online in de cloud

Voer bcpp uit in de gratis hostingprovider van OnWorks via Ubuntu Online, Fedora Online, Windows online emulator of MAC OS online emulator

Dit is de opdracht bcpp die kan worden uitgevoerd in de gratis hostingprovider van OnWorks met behulp van een van onze meerdere gratis online werkstations zoals Ubuntu Online, Fedora Online, Windows online emulator of MAC OS online emulator

PROGRAMMA:

NAAM


bcpp - C++ verfraaiing maken

KORTE INHOUD


bcpp [-bcl] [-bnl] [-cc ] [-f ]
[-fi ] [-fnc ] [-NS ] [-h] [-i
] [-lg] [-nc] [-qb] [-s] [-t] [-tbcl] [-tbnl] [ ] [ ]
[ ]

ALGEMEEN OPTIES


-bcl Open accolades op de coderegel

-bnl Open accolades op een nieuwe regel

-cc
Kolom om opmerkingen uit te lijnen met code

-f
Functieregelafstand

-fi
Invoer bestandsnaam

-fnc
Aangepast configuratiebestand laden

-NS
Naam van uitvoerbestand

-h, -? Help-bericht weergeven

-i
Lengte van de inspringruimte

-lg Laat grafische tekens achter

-nc
Kolom om opmerkingen zonder code uit te lijnen

-qb
Definieer de grootte van de interne wachtrijbuffer

-s Gebruik spaties bij het inspringen

-t Gebruik tabs bij het inspringen

-tbcl Open accolades op het hoogste niveau op coderegel

-tbnl Open accolades op het hoogste niveau op nieuwe lijn

INSCHAKELEN/UITSCHAKELEN OPTIES


Opties die beginnen met -y of -n activeren/deactiveren respectievelijk functies.

-ja or aangemaakt
Open accolades op de coderegel

-yb or -nb
Back-up van het invoerbestand met de extensie .bac

-ybbi or -nbbi
Laat beide beugels van een blok inspringen

-ybi or -nbi
Inspringing van de achterste beugel van het blok

-ykcwc or -nkcwc
Houd opmerkingen bij met Code

-ylcnc or -nlcnc
Laat reacties achter met NoCode

-mij or -Nee
Programma-uitvoer

-yq or -nq
Wijzig niet-ASCII-tekens tussen aanhalingstekens in octaal

Overzicht


Met dit programma kan een gebruiker bepaalde elementen van een C- of C++-broncode opnieuw formatteren. Dit
helpt als de code van één persoon een beetje onleesbaar is, of ingesprongen is in een stijl die dat doet
vind je niet leuk. Het gebruik van dit programma zal hopelijk helpen bij het opnieuw vormgeven van de code, zodat deze
sluit nauw aan bij jouw stijl. Vanwege de vele stijlen van C(++) die kunnen worden gecodeerd,
er zijn grenzen aan hoe goed dit programma met de broncode omgaat, en de daaruit voortvloeiende gevolgen
geformatteerde bron.

Hieronder volgt een lijst met geïmplementeerde functies:

- Herpositioneer opmerkingen op bepaalde locaties.

- Verwijder niet-afdrukbare tekens die niet tussen aanhalingstekens staan.

- Converteer niet-afdrukbare tekens binnen aanhalingstekens naar octale/tekennotatie.

- Vernieuw de regelafstand tussen functies.

- Knip spaties aan het einde van alle regels af, evenals lege regels aan het einde en aan het einde
uit het bestand.

- Herpositioneer de openingsbeugels naar Kernighan/Ritchie-stijl of naar Pascal-stijl.

- Gebruik van tabs of spaties bij het inspringen.

- Inspringen van code met één regel, volgens bepaalde C-voorwaardeverklaringen,
inclusief ingebedde SQL-instructies.

Voorwaarden


Dit programma draait onder Microsoft DOS V3.3 en Unix-platforms.

Het gebruikt ongeveer 50 - 70k (of meer, afhankelijk van de interne wachtrijgrootte) geheugen
tijdens de uitvoering.

De programmacode is zo geschreven dat deze compatibel is met bestaande C++
compilers, de code is echter niet ANSI-standaard en vereist mogelijk aanpassing voor uw
omgeving. De broncode is dus geschreven met standaard ANSI- en Posix-functies
die minste hoeveelheid herschrijven zou nodig moeten zijn als het opnieuw gecompileerd wordt op een andere computer
platform.

De huidige bronnen zijn samengesteld met Turbo C++ V3.0, voor MS-DOS, GNU G++ 2.7.2
onder Sun SPARCstation met SunOS, Solaris en SGI-werkstations met IRIX.

OPERATIE


De bediening van het programma gebeurt via de opdrachtregel (CLI) en met behulp van een configuratie
bestand kunt u uw formaatvereisten definiëren. In principe begint elke opdrachtrichtlijn met
een streepje "-" volgde mijn opdrachtnaam. Als er een andere parameter nodig is voor de opdracht, wordt de
parameter wordt toegevoegd na het commando en gescheiden door een spatie (dat wil zeggen bcpp -fi
invoer.cpp).

NB: Voer bcpp.exe niet zelfstandig in om de hulp bij de opdrachten te vinden, maar gebruik bcpp -? of bcpp -h.
Dit komt door de invoeromleiding van het besturingssysteem. Door zich aan de Unix CLI-conventie te houden, a
string die uit de CLI wordt gelezen en geen opdrachtrichtlijn heeft, wordt beschouwd als een
Invoer bestand. Als er twee van dergelijke exemplaren op de opdrachtregel staan, is de prioriteit
invoerbestand eerst en uitvoerbestand als tweede (dwz bcpp infile.cpp outfile.cpp -lg), een derde
een dergelijke gebeurtenis zal een foutmelding genereren.

Als er geen uitvoerbestand wordt gepresenteerd, verloopt de veronderstelde uitvoer via de standaarduitvoer. Dit
schakelt automatisch de programma-uitvoer uit. Parameters die op de opdrachtregel worden ingevoerd, worden wel weergegeven
overschrijf parameters die uit het configuratiebestand zijn gelezen.

Voorbeeld:
bcpp -fi invoer.cpp -f 2 -qb 5 -na -no -cc 60 > uitvoer.cpp

synopsis

-fi input.cpp Invoerbestand = input.cpp
-f 2 Functieafstand = 2
-qb 2 Interne wachtrijbuffer = 5
-na Verwijder niet-ASCII-tekens
-nee Onderdruk programma-uitvoer
-cc 60 Opmerkingen die op dezelfde regel verschijnen als
code wordt in kolom 60 geplaatst.
> output.cpp De uitvoer van het programma wordt doorgestuurd naar
"uitvoer.cpp"

Een configuratiebestand kan worden gebruikt om de meeste niet-veranderende elementen in te specificeren
herformatteren van code. Het configuratiebestand bestaat uit een aantal tamelijk lange woorden die
worden gebruikt om de uitvoerstijl van de code uit te leggen. Het instellen van deze parameters is echter zeer lastig
eenvoudig, ze bestaan ​​in principe uit twee typen: Boolean- of Integer-typen. Je favoriet gebruiken
teksteditor, kunt u het volgende wijzigen in het configuratiebestand ...

De volgende parameters bevinden zich in het configuratiebestand (standaard is
bcpp.cfg). Het programma zal proberen het standaardconfiguratiebestand van het programma te lezen
bron (dwz welk pad bcpp werd uitgevoerd). Met de optie -fnc kunt u een custom definiëren
configuratiebestandsnaam en pad van de CLI.

Bereik van gehele getallen: 0 - 5000 Bereik van Booleaanse typen: Aan, Ja of Uit, Nee

Functie_Spatiëring: geheel getal
Deze parameter specificeert hoeveel regels twee functies scheiden.

bv
functie_afstand = 2

CLI
-f 2

Use_Tabs: Booleaanse waarde
Specificeert of tabs moeten worden gebruikt bij het inspringen van code.

bv
gebruik_tabs = nee

CLI
-t (Tabbladen inschakelen, standaard gebruikt spaties)
-s (Gebruik tabs voor inspringen)

Indent_Spacing: geheel getal
Hiermee geeft u op hoeveel spaties moeten worden ingesprongen. Met deze parameter wordt ook de breedte van tabbladen ingesteld.
Bcpp beschouwt de breedte van een tabblad als hetzelfde als de breedte van een streepje.

EG
streepje_afstand = 4

CLI
-ik 4

Comments_With_Code : geheel getal
Definieert de kolom waarin opmerkingen die na de code op een regel verschijnen, zullen staan
geplaatst.

bv
opmerkingen_met_code = 50

CLI
-cc 50

Comments_With_Nocode : geheel getal
Definieert de kolom waarin opmerkingen die op een regel verschijnen, worden geplaatst.

bv
commentaren_met_nocode = 0

CLI
-nc 0

Indent_Preprocessor: Booleaanse waarde
Indien waar, zal bcpp preprocessorregels laten inspringen op de inspringing van de C(++)-code.
Als dit niet waar is, staan ​​de preprocessorregels in de eerste kolom. Niet herkend (dwz
niet-standaard) preprocessorregels worden altijd in de eerste kolom geplaatst.

Indent_Exec_Sql: Booleaanse waarde
Indien waar, zoekt bcpp naar ingebedde SQL-instructies (bijvoorbeeld EXEC SQL) en formaten
hen speciaal.

Keep_Comments_With_Code: Booleaanse waarde
Deze optie overschrijft de optie "Comments_With_Code". Deze optie instellen op Aan
zal opmerkingen maken die niet passen omdat inline opmerkingen aan de code worden toegevoegd
toch.

Leave_Comments_NoCode: Booleaanse waarde
Deze optie overschrijft de optie "Comments_With_Nocode". Deze optie instellen op Aan
zal opmerkingen die niet op dezelfde regel als de code voorkomen, laten inspringen
inspringen als code.

bv
leave_comments_nocode = ingeschakeld

CLI
-nlcnc (Schakel Leave_Comments_NoCode uit)
-ylcnc (zet Leave_Comments_NoCode aan)

NonAscii_Quotes_To_Octal: Booleaanse waarde
Gebruik deze optie om niet-ASCII (niet-afdrukbare) tekens te wijzigen in octale notatie als
ze liggen tussen aanhalingstekens. Deze parameter wordt pas van kracht als de
De parameters Ascii_Chars_Only of Leave_Graphic_Chars zijn ingesteld.

bv
NonAscii_Quotes_to_Octal = nee

CLI
-nq (Schakel niet-ASCII-tekens tussen aanhalingstekens uit naar octaal)
-yq (zet niet-ASCII-tekens tussen aanhalingstekens aan naar octaal)

Leave_Graphic_Chars: Booleaanse waarde
Als u deze parameter op ja instelt, worden niet-afdrukbare tekens uit de
bronbestand, maar laat alle tekens die IBM-afbeeldingen zijn met rust. Elke niet-
afdrukbare tekens die tussen aanhalingstekens staan, worden omgezet in
octale/tekennotatie, als de parameter NonAscii_Quotes_To_Octal is ingesteld op True.

EG
leave_graphic_chars = ja

CLI
-lg

Ascii_Chars_Only: Booleaanse waarde
Als u deze parameter op ja instelt, worden alle niet-afdrukbare, niet-ASCII-tekens verwijderd
uit het invoerbestand. Alle niet-afdrukbare tekens die tussen aanhalingstekens staan, zijn dat wel
getransformeerd in octale/tekennotatie als NonAscii_Quotes_To_Octal is ingesteld op
WAAR. Geef commentaar op deze parameter als u de parameter Leave_Graphic_Chars gebruikt,
omdat deze parameter deze zal overschrijven.

bv
ascii_chars_only = ja

CLI
-na (verwijder geen niet-ASCII-tekens)
-ya (Ja verwijder niet-ASCII-tekens)

Place_Brace_On_New_Line: Booleaanse waarde
Wanneer ingesteld op 'aan' zal bcpp openingsaccolades op nieuwe regels plaatsen ("Pascal" stijl C
codering), indien ingesteld op 'uit', zal bcpp "K&R"-stijl C-codering gebruiken.

Pascal-stijl C-codering:
als (voorwaarde)
{
statements;
}

K&R stijl C-codering:
als (voorwaarde) {
statements;
}

bv
place_brace_on_new_line = aan

CLI
-bnl (aan)
-bcl (uit)

Programma_Uitvoer: Booleaanse waarde
Deze parameter stopt de uitvoer van het programma en beschadigt de uitvoer die mogelijk wordt afgesloten
vanuit het programma via de standaarduitvoer. Als deze parameter is ingesteld op uit/nee
dan wordt er geen uitvoer uit het programma gegenereerd, tenzij er een fout optreedt.
De standaardfout wordt gebruikt om eventuele fouten weer te geven die tijdens de verwerking zijn aangetroffen.

EG
programma_uitvoer = uit

CLI
-nee (standaard is het genereren van uitvoer indien mogelijk, dit zal gebeuren
uitgang forceren)
-yo (schakel programma-uitvoer in indien mogelijk)

Wachtrijbuffer: geheel getal
Specificeert wat het interne geheugen nodig heeft in de grootte van de lijn
verwerkingsbuffer. Dit wordt gebruikt voor de verhuizing van open braces in Kernighan/Ritchie
stijl. Het uitbreiden van deze buffer naar grote hoeveelheden geheugen zal de verwerking vertragen
kleine machines.

bv
Wachtrijbuffer = 2

CLI
-qb 2

; : Niet toepasbaar
Als u een puntkomma vóór de tekst plaatst, wordt alles na de puntkomma een a
commentaar.

Back-upbestand: Booleaanse waarde
Deze optie maakt een back-up van het invoerbestand naar een bestand met de extensie ".bac" en
overschrijf het invoerbestand met de opnieuw geformatteerde versie.

bv
backup_bestand = ja

CLI
-yb (ja, back-up van het invoerbestand indien mogelijk)
-nb (nee, maak geen back-up van het invoerbestand)

het laden Configuratie Dien in : CLI Slechts


Bcpp implementeert een configuratie-instelling om aangepaste bestandsselectie uit een specifiek bestand mogelijk te maken
pad/bestand gedefinieerd door een gebruiker.

bv
bcpp input.cpp -yb (lees het configuratiebestand bcpp.cfg
voordat CLI-opties worden verwerkt)

bcpp -fnc /bin/bcpp.cfg (laad configuratiebestand op
genoemde locatie)

CLI
-fnc (gebruik door de gebruiker gedefinieerd)

Naam invoerbestand: alleen CLI
Deze optie zorgt ervoor dat bcpp gegevens op een bepaald pad en een bepaalde bestandsnaam leest.

EG
bcpp -fi invoer.cpp > ​​uitvoer.cpp

CLI
-fi

Naam uitvoerbestand: alleen CLI
Dit definieert de naam van het uitvoerbestand waarnaar gegevens moeten worden geschreven.

bv
Het moet zo zijn (in DOS, tenminste):

bcpp -fo uitvoer.cpp <invoer.cpp

ClI
-NS

Online Help: alleen CLI
Er bestaat enige online hulp die kort maar to the point is binnen het programma. De
help geeft een overzicht van alle CLI-opdrachten die beschikbaar zijn in het programma.

EG bcpp -h

CLI bcpp-?
bcpp -h

Configuratie Dien in Fout Berichten


Als u een opdracht/parameter onjuist invoert in het configuratiebestand, wordt op het
uitvoerbaar programma dat het leest, zal het programma samen met het programma een foutmelding genereren
lijnnummer. Hieronder volgt een uitleg van foutmeldingen die kunnen optreden tijdens
parameters in het configuratiebestand lezen.

Syntaxisfout na sleutelwoord:
Er treedt een fout op omdat het teken/woord na een parameter onjuist was, of
verwacht een ander trefwoord (bijv. =, Ja, Nee, Aan, Uit)

Bereikfout:
Er treedt een fout op wanneer integer-parameters een ongeldige numerieke instelling hebben (dat wil zeggen, A
nummer ligt niet tussen 0 - 5000).

Verwachte numerieke gegevens:
Deze fout treedt op wanneer alfanumerieke gegevens in plaats van numerieke gegevens voor geheel getal staan
typeparameters.

Kan niet ontcijferen:
De parameter op genoemde regel is niet geldig (dwz niet herkenbaar).

Als er fouten zijn opgetreden na het lezen van het configuratiebestand; wordt de gebruiker gevraagd
met een vervolgprompt [y/n] om de configuratiefout(en) eerder op te lossen
verwerken of doorgaan met de huidige ingestelde parameters.

lopen Tijd fouten Gedurende Invoer Dien in In behandeling


Geheugentoewijzing mislukt:
Het programma kon geen geheugen toewijzen om gegevens te verwerken. Deze fout stopt
verwerking van gegevens.

Fout in lijnconstructie

Ik verwachtte een soort code! Gegevenstype = ? :
Deze fout wordt gegenereerd tijdens het lijnconstructieproces. De gedecodeerde lijn
uit het invoerbestand zijn mogelijk te onleesbaar voor dit programma. Vind de lijn erin
het invoerbestand en kijk of het kan worden gewijzigd zodat de verwerking kan doorgaan.

C(++) verfraaiing Beperkingen


In deze sectie worden bepaalde gebieden binnen de code belicht waar bcpp er niet in zal slagen de
uitvoercode naar de gewenste stijl (hoewel deze mogelijk nog steeds kan worden gecompileerd).

- Alle code die door dit programma wordt gevoerd, moet in een compileerbare staat zijn. Dit
betekent dat er sluitingsbeugels moeten zijn die openingsbeugels opheffen. Bcpp
voert helemaal geen syntaxiscontrole uit op de code, maar formatteert deze opnieuw volgens open,
accolades sluiten en een handvol sleutelwoorden voor het inspringen van één regel.

- Er is ook een beperking aan de bewegingsvrijheid van open beugels
verwerkt. Dit komt door het huidige ontwerp van het programma (dit kan eenvoudig worden opgelost).
door de interne wachtrijbuffergrootte uit te breiden), geheugenvereisten, verwerking
snelheid. Dynamische geheugentoewijzing wordt in het hele programma op grote schaal gebruikt
kan de huidige limieten overschrijden als zich bepaalde omstandigheden voordoen.

Het voorbeeld laat zien dat de bewegingen van de beugel van de nieuwe lijn naar de bovenstaande lijn gaan
coderegel zal niet plaatsvinden omdat dit buiten het bereik van het programma zou vallen als de
de interne wachtrijbuffer is beperkt tot 2 regels.

Voorbeeld van bewegingsbereik van de brace:

als (een == b)
// De beugel wordt niet opnieuw gepositioneerd
{
b = c;
}

if (a == b) // De beugel wordt opnieuw gepositioneerd
{
b = c;
}

Eindresultaat

als (een == b)
// De beugel wordt niet opnieuw gepositioneerd
{
b = c;
}

if (a == b){ // De beugel wordt opnieuw gepositioneerd
b = c;
}

- Er is een beperking dat een enkele coderegel slechts één type code mag hebben
opmerking. Als er zowel C als C++ op dezelfde regel aanwezig zijn, dan is de regel
De bouwfase van het programma zal in de war raken en een fout genereren
bericht. De volgende regel produceert een Line Construction Error-bericht.

Voorbeeld van meerdere opmerkingen.

/* C Commentaar */ a = b; // C++-commentaar

De bovenstaande regel genereert een fout. Los dit op door één type te verwijderen
commentaar geven, combineren of op een nieuwe regel plaatsen.

AUTEURS


Geschreven door Steven De Toni december 1995
Bijgewerkt door Thomas Dickey januari 1997-2002

U kunt Steven De Toni contacteren via verschillende online netwerken:

Internet adres
[e-mail beveiligd]
[e-mail beveiligd]

Netmail via Fido-Net (hondennet)
Steven de Toni,
"De grote ontsnapping",
Hamilton,
Nieuw Zeeland

Demi-Monde Nieuw-Zeeland National Mail Network
(zie Hondennet)

Als al het andere niet lukt, stuur dan een post naar:

Tuinhoogtestraat 17,
Melville,
Hamilton,
Nieuw Zeeland

Thomas Dickey is te bereiken op

[e-mail beveiligd]

Speciale dank gaat uit naar Glyn Webster voor het proeflezen van mijn handleiding en het testen van mijn
programma.

Met dank aan Justin Slootsky voor zijn inbreng en wijzigingen voor deze versie.

Alles grammaticaal fouten in dit document zijn er voor uw plezier. ;-)

VRIJWARING


De auteurs geven geen garantie dat dit programma zal functioneren volgens de gegeven specificaties
via de configuratie, of de gereconstrueerde uitvoer van de broncode van het programma
verwerkt. Eventuele schade die zou kunnen voortvloeien uit het gebruik van dit programma (of het nu software is, of
hardware) is het probleem van de gebruiker, en niet van de auteurs. Het gebruik van deze software verplicht u tot
deze disclaimer.=

C++ Verfraaiing()

Gebruik bcpp online met behulp van onworks.net-services


Gratis servers en werkstations

Windows- en Linux-apps downloaden

Linux-commando's

Ad