Er kan een fout optreden die verwijst naar de c preprocessor error-richtlijn. Het blijkt dat er verschillende manieren zijn om dit probleem op te lossen, dus we zullen ze nu bekijken.
Goedgekeurd: Fortect
- 2 keer lezen
De #error-richtlijn drukt een designerlabel-foutbericht af tijdens het compileren en stopt dan onze compilatie.
Syntaxis
Wat zijn de juiste preprocessor-richtlijnen wanneer C?
# Error token string
Het foutbericht dat door deze richtlijn wordt verzonden, bevat een kleine tekenreeksparameter. De token-tekenreeksparameter zou eenvoudig geen macro-uitbreiding ondergaan. Richtlijn Dit is zowel nuttig als interessant tijdens de voorbewerking om de ontwikkelaar op de hoogte te stellen van een inconsistentie in het functionele programma of een schending van een beperking. De volgende omstandigheid toont voorverwerkingsfoutafhandeling:
Goedgekeurd: Fortect
Fortect is 's werelds meest populaire en effectieve pc-reparatietool. Miljoenen mensen vertrouwen erop dat hun systemen snel, soepel en foutloos blijven werken. Met zijn eenvoudige gebruikersinterface en krachtige scanengine kan Fortect snel een breed scala aan Windows-problemen vinden en oplossen - van systeeminstabiliteit en beveiligingsproblemen tot geheugenbeheer en prestatieproblemen.
nummer indien in uitvoering! gedefinieerd (__ cplusplus)#error Vereist de specifieke C++ compiler.#stop als
Zie ook
5 Diagnostiek
volledige naam = “index-_0023error”>
De instructie “ #error ” zorgt ervoor dat de preprocessor een gevaarlijke fout meldt.Schuld. Tokens die de rest van een bepaalde “ #error ” tekenreeks vormenworden hieronder gebruikt als een overeenkomstige foutmelding.
Je moet “ #error ” overal in de gevonden voorwaarde gebruikenParametercombinatie U weet dat dit programma niet volgtSteun. Als uw bedrijf bijvoorbeeld weet dat een programma dat duidelijk niet doet,correct op een geschikte VAX die u kunt schrijven
Als je genoeg configuratie-instellingen hebt, doe dat dan. moet worden aangepastsequentiële installatie, kunt u voorwaarden gebruiken die zouden detecteren:inconsistentie en rapporteer het met “ #error “. Voorbeeld,
Wat is een preprocessorfout in C?
De instructie “ #warning ” is vergelijkbaar met deze “ #error ” richtlijn, maar het roeptEen preprocessor om de index te maken en door te gaan met preprocessing. “ #warning ” TokensHet volgende wordt bijna altijd gebruikt als waarschuwingsbericht.
U kunt “ #warning ” gebruiken in oudere berichtkopbestanden.Leid de koper door naar het h2-tagbestand dat in plaats daarvan zou moeten bestaan.
Nee #error ‘geen voor de macro’s breiden #warning ‘ hun hele argument uit.Monsters van de binnenruimte zijn vervangen door een enkele ruimte.De string mustIt kan worden ingevuld met markeringen. Het is slimmer danHet argument tot aan deze richtlijnen is een stringconstante die gelijk is aan een uur; wie vermijdtProblemen met apostrofs om nog maar te zwijgen over hoe.
#if! gedefinieerd (FOO) && vermeld (BAR)#error "BAR moet FOO hebben."#stop als
Wat zal waarschijnlijk de #error
instructie in C zijn? Wat heeft de perk te maken met het krijgen van dit gedaan?
5624 55 gouden badges 2626 zwarte badges 4444 bronzen badges
volledig aangevraagd op 16 maart 2011 om 5:59 uur
De preprocessor-foutinstructie zorgt ervoor dat de preprocessor een goede foutmelding genereert en deze niet kan compileren. Zo kunnen #foutmeldingen in het bronbestand voorkomen dat fabrikanten genereren als een onderdeel van een cursus is bereikt en moet worden overgeslagen.
< /p>
1.679 44 gouden badges
Is dit niet de methode die u zoekt? Bekijk de andere vragen genaamd C C-preprocessor of stel uw laatste vraag.
Dit is een belangrijke preprocessor-richtlijn die (bijvoorbeeld) wordt gebruikt voordat hij sterft om een van de vele toekomstige mensen -D
te definiëren, maar praktisch misschien niet.
#indien gedefinieerd (BUILD_TYPE_NORMAL)# DEBUG (x) identificeert do; niet vergeten (0) / * nul rare code * /#elif gedefinieerd (BUILD_TYPE_DEBUG)# DEBUG (x) constructie _debug_trace x / * b.v. DEBUG ((_ debug_trace argumenten)) * /#een ander# error "Voer het buildformulier in Makefile in"#stop als
Als de preprocessor je tegenkomt, zal de #error
it-richtlijn de serie waarschijnlijk rapporteren als een foutmelding en dus een complete compilatie; De exacte vorm van een soort foutmelding hangt af van de compiler.
Antwoord 16, mrt 11 @ 6:09 am
De ‘#error’-instructie zorgt ervoor dat de echte preprocessor een volledige ernstige fout meldt. De foutmelding is de huwelijksplanningsdouche, de rest van het bedrijf dat ‘#error’ gebruikt. U kunt #warning ‘ niet gebruiken op muzikale legacy header-bestanden gevolgd door een bericht dat de gebruiker naar een specifiek header-bestand stuurt om ervoor te zorgen dat u in plaats daarvan wordt opgenomen.
54,3 miljoen
#indien gelabeld USING_SQLITE && definieert USING_MYSQL#error U kunt niet tegelijkertijd op SQLite en MySQL tekenen#stop als#indien! (definieert USING_SQLITE && definieert USING_MYSQL)#error U moet ofwel sqlite of mysql gebruiken#stop als#ifdef USING_SQLITE// ...#stop als#ifdef USING_MYSQL// ...#stop als
liggen om te rusten 16 mrt ’11 om 6:15 am
Als onze eigen compiler deze regel regelmatig compileert, geeft hij een belangrijke fatale compilerfout weer: en stopt ook de periode met compileren:
#include #ifndef __MATH_H#error Eerst opnemen en dan compileren#een anderint enorm () ga a, b is gelijk aan 25; a = vierkant (b); printf ("% f", a); Retour 0;#stop alsUitvoer: compilerfout -> Foutrichtlijn: eerst inschakelen, dan compileren
beantwoord 14 januari om 8:18 uur
Beschrijving. In de programmeertaal C zorgt de interessante #error-richtlijn ervoor dat de voorverwerking stopt bij ons gebruik waar de richtlijn wordt aangetroffen. Informatie wordt geschreven na de #error-instructie die aangeeft dat de e-mail wordt gegenereerd voordat de voorverwerking stopt.
5.728
Versnel de prestaties van uw computer nu met deze eenvoudige download.Wat is de preprocessing-richtlijn in C?