С-д суурилсан програмчлалын хэлнүүд
Си хэл нь 1969-өөс 1973 оны хооронд AT&T-ийн Беллийн Лабораторид Деннис Ритчи зохиосон юм. Си хэл нь бүх цаг үеийн хамгын өргөн ашиглагддаг програмчлалын хэлнүүдийн нэр бөгөөд Си хэлний хөрвүүлэгч нь ихэнх компьютерын архитектур, үйлдлийн системд бий. Си хэлнээс хойш гарч буй олон хэлнүүд Си хэл дээр суурилан бүтээгдсэн байдаг. Тэд шууд болон шууд бусаар зээлж авсан байдаг.
Програмын хэлнүүд | Бүтээгдсэн он | Зохиогч (хаана) | Тйлбар | |
---|---|---|---|---|
Ratfor | 1974 | Brain Kernighan (Bell лаборотори) | C болон Fortran хоёрийг хослуулсан хэл. Машин код С-ийн хөрвүүлэгч рүү хялбар хандах боломжгүй үед хэрэгжүүлнэ. ]]. | |
C shell/tcsh | 1970 оны сүүлээр | Bill Joy(Berkeley Калифорниагын их сургууль) | Скрипт програмчлалын хэл Юникс шеллийн стандарттай. | |
C++ | 1979 | Bjarne Stroustrup (Bell лаборотори ) | Анх C with Classes гэх нэртэй байсанч 1983 онд C+++ гэж дахин нэрлэсэн. Ерөнхий програмчлалын хэл бөгөөд обьект хандалт дээр үндэслэсэн учир өргөн ашиглаж маш өсөлттэй байгаа. | |
Objective-C | 1985 | Robert Fourer, David Gay and Brian Kernighan (Bell лаборотори ) | Энэ нь Smalltalk дээр суурьласан обьект хандалагат динамик програмчлалын хэл юм. | |
Perl | 1987 | Larry Wall | Скрипт програмчлалын хэл бөгөөд системийн админууд, текст боловсруулахад, веб серверийн харилцаа холбоонд ашигладаг. | |
Java | 1991 | James Cosling | Oak-д үйлдвэрлэгдэж 1995 онд шинэчлэгдсэн. Энэ хэл нь Objective C болон С++ хэлнүүдийн синтакс дээр суурьлан бүтээгдсэн. Хамгын өргөн ашиглагдаж байгаа програмчлалын хэл юм. | |
Limbo | 1995 | Limbo нь С хэл дээр суурьласан Alef хэл дээр суурьлан бүтээгдсэн. | ||
PHP | 1995 | Rasmus Lerdorf | HTML тэй скриптийн хувьд адилханч синтаксийн хувьд С дээр суурьласан. | |
С# | 1999 | Anders Hejlsberg (Microsoft) | Simple Managed C хөрвүүлэгч дээр үндэслэн бүтээгдсэн. Анх Cool гэж нэрлэсэн. | |
JavaScript | C хэлний синтаксын нөлөөгөөр бүтээгдсэн. | |||
Python | 1980 | Guido van Rossum | Сүүлийн үед хамгын эрэлттэй байгаа ирээдүйн хэл гэж нэрлэгдэж буй хэл бөгөөд мөн С-ийн синтакс дээр суурьласан. |
С хэл дээр суурьласан бусад хэлнүүд:
засварлахAMPL, C*, S-Lang, SAC, Alef, ECMAscrip, C—, Ch, D Cyclone, LSL, Squirrel, Go, OpenCL, Swift(програмчлалын хэл), AWK, BitC, LPC, Pike, Seed7, Processing, Split-C, Unified Parallel C, Ciik, Chapel, Fortress, Agora, Falcon, BCPL, B, Nim, Nemerle, ApeScript, Amiga E, Lite-C, Newsqueak, Not eXactly C (NXC), Not Quite C , Oak, PROMAL, Handel-C, Dart, CINT, Cg, nesC, R, Hack, Charm, X Sharp, Claire, Noop, Neko, Axum, Umple, TOM, Telescript, Fantom.
С болон бусад хэлнүүдийн синтаксын адил талууд:
засварлах
С++ бол С хэлэн дээр үндэслэсэн хэлний сонгодог жишээ бөгөөд барагл С хэлийн синтакстай бараг л адилхан юм. Доорх жишээгээр Pascal, Fortran, Scheme, С++ хэлнүүдийн арифметик фунц, оролт гаралт, функцууд параметрууд болон давталт түүний урсгалуудыг харьцуулж үзүүлнэ.
Aрифметик фунцууд
C++ | Fortran | Pascal | Scheme | |
---|---|---|---|---|
&& | .AND. | and | and | |
! | .NOT. | not | not | |
== | .EQ. | = | =, equal? | |
>, >=, <, <= | .GT., .GE., .LT., .LE. | >, >=, <, <= | >, >=, <, <= |
Оролт гаралт
C++ | Fortran | Pascal | Scheme | |
---|---|---|---|---|
cout << "The value of k is "<< k << endl; | writeln ("The value of k is ", k); | PRINT *, "THE VALUE OF K IS ", K | (display "The value of k is ") (display k) (newline) |
Функцууд болон параметрууд
C++ | Fortran | Pascal | Scheme | |
---|---|---|---|---|
void PutAvg (int total, int n, float avg) { cout << "average = " << avg << endl; cout << "total = " << total << ", n = " << n << endl } |
SUBROUTINE PUTAVG (TOTAL, N, AVG) INTEGER TOTAL, N REAL AVG PRINT *, "AVERAGE = ", AVG PRINT *, "TOTAL = ", TOTAL, ", N = ", N RETURN END |
procedure PutAvg (total, n: integer; avg: real); begin writeln ("average = ", avg); writeln ("total = ", total, ", n = ", n); end; |
(define (put-avg total n avg) | |
float Average (int total, int n) { return total/float(n); } |
REAL FUNCTION AVERAGE (TOTAL, N) INTEGER TOTAL, N AVERAGE = TOTAL/FLOAT(N) RETURN END |
function Average (total, n: integer): real; begin Average := total/n; end; |
(define (average total n) (/ total n) ) |
Давталт түүний урсгалууд
C++ | Fortran | |
---|---|---|
if (boolexpr) { ... } |
if boolexpr then begin ... end; |
|
if (boolexpr) { ... } else { ... } |
if boolexpr then begin ... end else begin ... end; |
|
if (boolexpr1) { ... } else if (boolexpr2) { ... } |
if boolexpr1 then begin ... end else if boolexpr2 then begin ... end; |
|
while (boolexpr) { ... } |
while boolexpr do begin ... end; |
|
do { ... } while (boolexpr); |
repeat ... until boolexpr; |
C++ | Fortran | Fortran | |
---|---|---|---|
for (int k=1; k<=N; k=k+1) { ... } |
for k := 1 to N do begin ... end; |
DO 10 K = 1,N ... 10 CONTINUE |