C++ __FILE__ macro

C File Macro



Le macro sono un pezzo di codice in uno script con un nome specifico. Quando una delle macro viene eseguita, il codice dietro di esse viene eseguito per eseguire una determinata attività. Proprio così, __FILE__ è una macro utilizzata all'interno del linguaggio C++ per ottenere il percorso di un file specifico. Quindi, oggi in questa guida, discuteremo il funzionamento di una macro __FILE__ C++.

Esempio 01:

Prendiamo il primo esempio di macro __FILE__ in C++ avviando l'applicazione della console del terminale. Potresti usare la scorciatoia 'Ctrl+Alt+T' per farlo. Un altro modo per aprire la shell è utilizzare il menu Area attività se hai dimenticato il tasto di scelta rapida. Dopo che la console del terminale è stata avviata sullo schermo, prova a creare un nuovo file c++ per inserire il codice al suo interno. Un file può essere creato con una semplice query 'touch', come mostrato nell'immagine allegata di seguito. Il nome di un file appena creato deve essere dato con la parola chiave “touch”.







Ci deve essere un editor installato sul tuo sistema Linux Ubuntu 20.04 per utilizzarlo per la codifica e l'apertura dei file appena creati. Gli editor più consigliati e conosciuti tra gli utenti Linux sono GNU Nano e l'editor Vim. Oltre a questo, l'editor di testo può essere utilizzato anche nel caso in cui entrambi gli editor precedentemente menzionati non funzionino. Quindi, abbiamo già installato l'editor GNU Nano. Pertanto, lo useremo per aprire e modificare il file per creare il codice. Usa la parola chiave 'nano' insieme al nome del file per far funzionare l'editor.





Ora, il file C++ appena creato macro.cc è pronto per la codifica nell'editor. Iniziamo a implementare il codice C++ mentre stiamo implementando questo articolo per vedere il funzionamento della macro __FILE__. Abbiamo iniziato il nostro codice C++ aggiungendo l'intestazione input-output standard nella parte superiore di esso. La parola chiave 'include' è stata utilizzata con il cancelletto per farlo. Senza questa intestazione, l'input e l'output del codice C++ non funzioneranno sulla console al momento della compilazione e dell'esecuzione.





Il metodo main() è il pilastro fondamentale del nostro codice poiché l'esecuzione inizia da esso e termina in esso. All'interno del metodo main(), verrà svolto il lavoro effettivo. Abbiamo utilizzato un codice a riga singola nel nostro metodo main() per descrivere la funzionalità della macro __FILE__. Quindi, l'istruzione printf è stata usata qui, prendendo i due valori come argomenti, cioè, stringa che prende il nome del file e la funzione macro.

La macro __FILE__ viene utilizzata qui per acquisire il percorso del file corrente o il suo nome. Mentre '%S' viene utilizzato per stampare il percorso corrente di un file o il suo nome all'interno di una stringa. È necessario salvare il codice prima dell'esecuzione con l'aiuto di una scorciatoia 'Ctrl+S'. Ora il codice è stato salvato, prova a tornare al terminale della shell usando la scorciatoia 'Ctrl+X'.



Quando abbiamo finito con il codice C++ per la macro __FILE__, iniziamo la compilazione del codice C++. Per la compilazione, abbiamo già installato il compilatore g++ per compilare il codice C++. Quindi, il compilatore g++ è stato utilizzato nel terminale per compilare il file “macro.cc”. Al momento della compilazione, non restituisce nulla, il che indica che il codice C++ all'interno del file macro.cc è semanticamente corretto. Dopo la compilazione, arrivano i turni per l'esecuzione di un codice. Per eseguire il file di codice, tendiamo a utilizzare la query semplice './.aout'. Dopo aver eseguito il file macro.cc, otteniamo il nome di un file come in cambio. Ecco come funziona la macro __FILE__ C++.

Esempio 02:

Facciamo un altro esempio per approfondire la funzionalità della macro __FILE__ C++ all'interno del sistema Ubuntu 20.04. Come abbiamo visto come funziona la macro __FILE__ C++ quando è stata utilizzata per recuperare il percorso del file di un file in cui è stata menzionata.

Ora utilizzeremo la macro C++ __FILE__ per ottenere il percorso del file o il nome di un file diverso dal file su cui stiamo attualmente lavorando. Quindi, abbiamo aperto lo stesso file macro.cc nell'editor GNU Nano per aggiornare il codice. Abbiamo aggiunto l'intestazione input-output standard con la parola chiave include e inizializzato una funzione main() con il tipo di ritorno intero.

All'interno del metodo main(), la prima istruzione print è la stessa di quella precedente per ottenere il percorso del file corrente su cui stiamo attualmente lavorando. Successivamente, abbiamo utilizzato la parola chiave #line con un altro nome di file, ad esempio 'new.txt' alla riga consecutiva successiva. Questo per specificare il file diverso dal file corrente per il quale otterremo il suo nome o un percorso. La successiva istruzione printf è stata utilizzata per stampare il percorso di un file 'new.txt' con l'aiuto di una macro C++ __FILE__. Salva il tuo codice appena aggiornato per evitare qualsiasi inconveniente al momento della compilazione. Usa 'Ctrl + S' per farlo.

Dopo aver salvato il file aggiornato, chiudilo tramite 'Ctrl + X' dalla tastiera. Ora siamo tornati alla schermata della shell.

Compiliamo il file aggiornato. Usa il compilatore g++ per farlo con il nome di un file macro.cc. Dopo la corretta compilazione, esegui il codice con il comando './a.out' nella console. L'output mostra prima il percorso di un file corrente, quindi il percorso dell'altro file, 'new.txt' è stato visualizzato sullo schermo della shell. Guarda com'è facile usare la macro __FILE__ per visualizzare il percorso del file sulla shell.

Esempio 03:

Diamo un'occhiata alla macro __LINE__ insieme alla macro __FILE__ in C++. La macro __LINE__ visualizzerà il numero di riga del file su cui è stata utilizzata la macro. Quindi, apri lo stesso file e aggiorna entrambe le istruzioni printf. Prima della macro C++ __LINE__, abbiamo aggiunto la macro C++ __LINE__. Questa __LINE__macro ottiene il numero di riga di un file corrente in cui __FILE__ viene prima. Mentre la prossima macro __LINE__ otterrà il primo numero di riga dell'altro file perché abbiamo già menzionato il numero di riga con il nome del file nel codice.

Dopo aver salvato e chiuso il file, siamo tornati al terminale della shell. Stiamo utilizzando lo stesso comando g++ per compilare il codice del file C++ macro.cc. La compilazione riuscita porta al comando di esecuzione. Ora il comando './a.out' viene utilizzato qui per farlo. L'esecuzione ci dice che il primo file, cioè il file corrente nella riga 3, mentre la macro __FILE__ si trova nella prima riga dell'altro file menzionato nel codice.

Conclusione:

Questo articolo contiene la definizione di macro e discute l'utilizzo della macro C++ __FILE__ nel sistema Ubuntu 20.04. La macro C++ __LINE__ è stata discussa anche in alcuni esempi per illustrare meglio il funzionamento della macro C++ __FILE__. Per riassumere, abbiamo una grande speranza che questo articolo ti aiuti con la macro __FILE__C++ al suo meglio.