Du kan ha ett fel i ansiktet som pekar på feldirektivet för c preprocessor. Det visar sig att det finns olika sätt att lösa detta problem, så vi ska undersöka dem nu.
Godkänd: Fortect
- Läs två gånger
#error-direktivet skriver ut ett utvecklarfelmeddelande vid kompilering och avslutar sedan vår kompilering.
Syntax
Vad är de korrekta förprocessordirektiv gör C?
# Feltokensträng
Felmeddelandet som skickas av detta direktiv innehåller en symbolsträngsparameter. Token-strängparametern genomgår helt enkelt makroexpansion i en position. Direktiv Detta är mycket intressant under förbehandling för att meddela utvecklaren om ett annat program inkonsekvens eller överträdelse av begränsningar. Följande position visar hantering av förbearbetningsfel:
Godkänd: Fortect
Fortect är världens mest populära och effektiva PC-reparationsverktyg. Det litar på miljontals människor för att hålla sina system igång snabbt, smidigt och felfritt. Med sitt enkla användargränssnitt och kraftfulla skanningsmotor hittar och fixar Fortect snabbt ett brett utbud av Windows-problem – från systeminstabilitet och säkerhetsproblem till minneshantering och prestandaflaskhalsar.
nummer om pågår! definierad (__ cplusplus)#error Kräver din egen C++-kompilator.#slut om
Se även
5 Diagnostik
designation = “index-_0023error”>
Informationen “ #error ” gör att förprocessorn rapporterar ett skadligt fel.Skuld. Tokens som utgör resten av den “ #error “-strängenanvänds nedan som du ser, motsvarande felmeddelande.
Du måste använda “ #error ” som visas i det tillstånd som hittadesParameterkombination Du vet att programmet vanligtvis inte följerStöd. Till exempel om folk vet att ett program inte på det hela taget gör detkorrekt på en lämplig VAX du kan skriva
Om du har tillräckligt med konfigurationsinställningar, gör det. måste definitivt finjusterasekventiell installation, kan du använda villkor för att upptäckainkonsekvens och rapportera det med “ #error “. Exempel,
Vad är förprocessorfel i C?
“ #warning “-direktivet liknar alla “ #error “-direktivet, men det anroparEn förprocessor på grund av att indexet skapas och att förbearbetningen fortsätter. “ #warning ” TokensFöljande används nästan alltid samtidigt som ett varningsmeddelande.
Du kan använda “ #warning ” i äldre meddelandehuvudfiler.Omdirigera spelaren till h2-taggfilen som skulle visa sig användas istället.
Inget #error ‘ingen med makron att göra utökar #warning ‘ hans eller hennes argument.Prover av det inre utrymmet har ersatts av helt enkelt ett enda utrymme.Snöret måste Det kan stoppas i med markörer. Det är smartare änArgumenteringstiden för dessa direktiv är en strängkonstant lika med avseende på en timme; som undvikerProblem med apostrof för att inte tala om hur.
#if! definierad (FOO) && listad (BAR)#error "BAR måste ha FOO."#slut om
Vad anses #error
-satsen i C? Vad har förmånen med denna uppgift att göra?
5624 55 guldmärken 2626 svarta märken 4444 bronsmärken
begärd till och med den 16 mars 2011 kl. 05.59
Förprocessorfelinstruktionen får förprocessorn att generera sitt felmeddelande och kan inte kompilera det. Till exempel kan #error-scenarier i källfilen hindra personer från att generera om ett avsnitt av en lektion har nåtts och bör hoppas över.
< /p>
1 679 44 guldmärken
Är inte det här metoden du letar efter? Kolla in de andra frågorna som heter C C-förprocessor eller ställ din sista fråga.
Detta är ett principiellt förbehandlardirektiv som används (till exempel) innan det är klart för att en av de många framtida personas -D
ska definieras, men praktiskt taget aldrig.
#om definierad (BUILD_TYPE_NORMAL)# DEBUG (x) anger do; inte glömma (0) / * noll konstig kod * /#elif definierad (BUILD_TYPE_DEBUG)# DEBUG (x) build _debug_trace x / * t.ex. DEBUG ((_ debug_trace args)) * /#annan# error "Vänligen ange byggdesign och stil i Makefile"#slut om
Om förprocessorn upplever dig, skulle #error
it-direktivet förmodligen rapportera serien som ett felmeddelande och även en komplett kompilering; Den exakta formen av det faktiska felmeddelandet beror på kompilatorn.
Svar 16, 11 mars kl. 06:09
‘#error’-instruktionen får den verkliga förprocessorn att rapportera per allvarligt fel. Felmeddelandet är förlovningsduschen, vilket är resten av gränsen som använder ‘#error’. Du kan inte använda #warning ‘på historikhuvudfiler följt av ett meddelande som rekommenderar användaren att inkludera en specifik rubrikfil istället.
54,3 tusen
#if med namnet USING_SQLITE && definierar USING_MYSQL#error Du kan inte använda SQLite och MySQL fullt ut samtidigt#slut om#om! (definierar USING_SQLITE && definierar USING_MYSQL)#error Du måste använda antingen sqlite eller mysql#slut om#ifdef USING_SQLITE// ...#slut om#ifdef USING_MYSQL// ...#slut om
rensat 16 mars ’11 kl. 06.15
Om kompilatorn regelbundet kompilerar den här raden, visar den det nya fatala kompilatorfelet: och stoppar även leverantören från att fortsätta att kompilera:
#include #ifndef __MATH_H#error Inkludera först och kompilera sedan#annanint basic () go a, b är lika med 25; a = kvadrat (b); printf ("% f", a); Returnera 0;#slut omUtdata: kompilatorfel -> Feldirektiv: aktivera först och kompilera sedan
svarade 14 januari kl 08:18
Beskrivning. I programmeringsspråket C gör det moderna #error-direktivet att förbearbetningen stannar vid vår idé där direktivet påträffas. Information cirkuleras efter #error-direktivet som indikerar att idén kommer att genereras innan förbearbetningen stoppas.
5.728
Snabba upp din dators prestanda nu med denna enkla nedladdning.Vad är förbearbetningsdirektivet i C?