2012-04-07 12 views
23

Sto imparando C da 'Programming in C' by Stephen Kochan.Che cosa significa "Costruire il linguaggio"?

Sebbene l'autore stia attento fin dall'inizio a non confondere gli studenti con il gergo, ma occasionalmente ha usato pochi termini senza spiegarne il significato. Ho capito il significato di molti di questi termini con l'aiuto di internet.

Tuttavia, non riuscivo a capire il significato esatto della frase "costruzione del linguaggio", e sfortunatamente il web non fornisce una buona spiegazione.

Considerando che sono un principiante, cosa significa "linguaggio costruttivo"?

+1

Hai provato [wikipedia] (http://en.wikipedia.org/wiki/Language_construct)? –

+3

sì, ho provato .. non riuscivo a cogliere il concetto. badate bene, sono un principiante adulto, lento nell'apprendimento. – KawaiKx

+0

Si noti che il termine tende ad essere usato in modo abbastanza approssimativo, per fare riferimento ad alcuni sottoinsiemi della sintassi/semantica del linguaggio. –

risposta

29

In primo luogo, è necessario capire cos'è un constructed language. Tutti i linguaggi di programmazione sono linguaggi costruiti (leggi il riferimento). Puoi quindi leggere un po 'su compiler construction, incluso questo reference.

Tornando alla tua domanda, considerare questo: La lingua inglese (una lingua naturale) ha gettoni 'AZ/0-9/,;" ...' che usiamo per costruire 'parole' e utilizziamo le regole per le lingue per creare frasi senza parole, quindi in inglese un costrutto è ciò che costruiamo con i token.

Considerate questo esempio di mattoni e malta: immaginate che se decideste di costruire una casa, i materiali di base che potreste usare sono: sabbia, ferro, legno, cemento, acqua (solo quattro per semplicità). Qualunque cosa tu abbia costruito su questi 4 o 5+ oggetti sarebbe un "COSTRUITO", che a sua volta ti aiuta a costruire la tua casa.

Ho omesso intenzionalmente i dettagli per semplificare ulteriormente la risposta; spero che questo sia utile.

+3

+1 per semplicità –

+0

Sono sorpreso che tu non abbia accettato le mie modifiche linguistiche - avrebbe ha reso la tua preziosa risposta ancora migliore. Oh, beh – lifebalance

+0

@lifebalance perdonami Non vedo nessuno di loro :( – sakhunzai

3

Senza vedere il contesto in cui viene utilizzata la frase, non posso esserne sicuro, ma in generale la frase "costruzione del linguaggio" significa semplicemente la combinazione di parole chiave, grammatica e struttura di un linguaggio di codifica. In pratica, come formattare/scrivere/costruire un pezzo di codice.

+0

"L'uso corretto dell'indentazione diventa ancora più critico quando si ha a che fare con costrutti di programma più sofisticati come le dichiarazioni nidificate". "naturalmente, il linguaggio C fornisce un costrutto linguistico speciale per gestire una situazione del genere (parlando di statment)". "ora che hai familiarità con tutti i costrutti di base del ciclo forniti dal linguaggio C". – KawaiKx

+1

Sì in questa frase è usato esattamente come pensavo. Si tratta di elementi "più sofisticati" del linguaggio di codifica C (in questo caso un "for-statement" annidato. "For-statements" sono solo uno dei tanti elementi del linguaggio di codifica utilizzati per costruire un pezzo di codice. costrutti sono for-loops, if-statement, while-loops, ecc. – hofnarwillie

+0

Si prega di contrassegnare come risposta se questo è stato utile ... :) – hofnarwillie

9

Un costrutto di linguaggio è una sintassi del linguaggio. Ad esempio, il seguente è un costrutto del linguaggio in C che consente di controllare il flusso di un programma:

if (condition) { 
    /* when condition is true */ 
} else { 
    /* when condition is false */ 
} 

Di solito usano il termine lingua costruire perché queste sono le parti della maggior parte dei linguaggi di programmazione, ma possono essere scritte diversamente, a seconda della lingua. Ad esempio, un simile costrutto del linguaggio in Bourne Shell sarebbe:

if COMMAND; then 
    # when command returns 0 
else 
    # when command returns anything else 
fi 

La funzione di questo costrutto è lo stesso, tuttavia, il modo in cui è scritto è un po 'diverso.

Spero che questo aiuti. Se hai bisogno di maggiori dettagli, potresti voler fare un po 'più di ricerca. Come suggerisce uno dei commenti, Wikipedia potrebbe essere utile.

3

Sono le unità di base da cui è stata creata la lingua. Non possono essere utilizzati come rollback di funzioni. Vengono chiamati direttamente dal parser. Include tutti gli stili di sintassi, semantica e codifica di una lingua. Per ulteriori chiarimenti si può fare riferimento a this question.

3

Wikipedia definizione:

Un costrutto lingua è una parte sintatticamente consentito di un programma che può essere formato da uno o più token lessicali secondo le regole di un linguaggio di programmazione. Il termine Costrutti Linguistici viene spesso usato come sinonimo di struttura di controllo e non deve essere confuso con una funzione.

1

diciamo che si desidera creare una classe che contiene metodi e proprietà, in modo da:

Construct è un'architettura di una classe che si sta per creare. L'architettura della classe consiste di metodi e proprietà create dall'utente utilizzando le utility predefiniti (come ad esempio: 'se',, 'interruttore' 'altro', 'pausa', etc)

Questo è il mio introito su costrutto .

0

In riferimento ad un linguaggio di programmazione

Language Constructs mean the basic constructs of a programming languge e.g 
1. Conditions (if, else, switch) 
2. Loops (For, While, Do-while) etc 
0

C è un linguaggio strutturale così durante la compilazione il codice di tutto cosa vale istruzione per istruzione. Quindi diventa necessario posizionare la tua dichiarazione correttamente. Questa collocazione, vale a dire l'inserimento corretto della tua dichiarazione, è il tuo costrutto linguistico, altrimenti potrebbe esserci un errore di sintassi o un errore logico.