Operator compus - un construct al limbajului de programare format din mai multe comenzi (operatori) ai limbajului de programare, dar care participă la program ca un singur operator.
Conceptul de operator compus a apărut în limbajul de programare Algol . Operatorii structurali introduși în acest limbaj ( ramură , ciclu ) au fost organizați în așa fel încât să poată fi folosită în ei o singură comandă a limbajului. Pentru a nu limita programatorul , a fost introdus în limbaj conceptul de operator compus: orice set de operatori plasați între cuvintele cheie început și sfârșit, din punctul de vedere al traducătorului , a devenit o singură comandă (operator) și putea fi folosit oriunde în program unde ar trebui să fie folosit un operator.
Conceptul de declarație compusă a fost moștenit de Pascal și multe alte limbaje de programare bazate pe Algol. În Pascal, instrucțiunea if, bucle while și for necesită o instrucțiune ca ramuri și corp, prin urmare, dacă este necesar să plasați mai multe comenzi în ramurile unei instrucțiuni condiționate sau în corpul buclei, sunt folosite instrucțiuni compuse:
if condition then begin { începutul instrucțiunii compuse } ... { instrucțiuni multiple } end { sfârșitul instrucțiunii compuse } else begin { începutul instrucțiunii compuse } ... { instrucțiuni multiple } end ; { sfârșitul declarației compuse } condiția while do begin { începutul instrucțiunii compuse } ... { instrucțiuni multiple } end ; { sfârșitul declarației compuse } pentru variabila := valoarea 1 la valoarea 2 do begin { începutul instrucțiunii compuse } ... { instrucțiuni multiple } end ; { sfârșitul declarației compuse }În limbajul C , operatorul compus este limitat la acolade, ceea ce scurtează textul programului, dar nu diferă fundamental de Pascal și Algol:
if ( condiție ) { // începutul instrucțiunii compuse ... // declarații multiple } // sfârșitul instrucțiunii compuse else { // începutul instrucțiunii compuse ... // declarații multiple } // sfârșitul instrucțiunii compuse while ( condiție ) { // începutul instrucțiunii compuse ... // declarații multiple } // sfârșitul instrucțiunii compuse do { // începutul instrucțiunii compuse ... // declarații multiple } // sfârșitul instrucțiunii compuse while ( condiție ); pentru ( inițializare ; condiție ; declarație ) { // începutul instrucțiunii compuse ... // declarații multiple } // sfârșitul instrucțiunii compuseO serie de limbaje de programare au abandonat utilizarea instrucțiunilor compuse. Ele prevăd posibilitatea utilizării mai multor operatori scriiți secvențial în orice construcții sintactice, ca urmare, nu este nevoie de operatori compuși special organizați. Cu toate acestea, chiar și în astfel de limbi, unele elemente, cum ar fi corpurile de proceduri și funcții, sunt de fapt declarații compuse, deși nu sunt numite așa.