Paradigm(s) | Imperative (procedural), structured |
---|---|
Appeared in | 1972[1] |
Designed bi | Dennis Ritchie |
Developer | Dennis Ritchie & Bell Labs (creators); ANSI X3J11 (ANSI C); ISO/IEC JTC1/SC22/WG14 (ISO C) |
Stable release | C11 (December 2011) |
Typin discipline | Static, weak, manifest, nominal |
Major implementations | Clang, GCC, Intel C, MSVC, Pelles C, Watcom C |
Dialects | Cyclone, Unified Parallel C, Split-C, Cilk, C* |
Influenced bi | B (BCPL, CPL), ALGOL 68,[2] Assembly, PL/I, FORTRAN |
Influenced | Numerous: AMPL, AWK, csh, C++, C--, C#, Objective-C, BitC, D, Go, Rust, Java, JavaScript, Limbo, LPC, Perl, PHP, Pike, Processing, Seed7, Verilog (HDL)[3] |
OS | Cross-platform (multi-platform) |
Usual filename extensions | .c, .h |
|
In computin, C (/ˈsiː/, as in the letter C) is a general-purpose programmin leid initially developed bi Dennis Ritchie atween 1969 an 1973 at AT&T Bell Labs.[4] Lik maist imperative leids in the ALGOL tradeetion, C haes facilities for structured programmin an allaes lexical variable scope an recursion, while a static type seestem prevents mony unintendit operations. Its design provides constructs that cairt efficiently tae teepical machine instructions, an tharefore it haes foond lastin uise in applications that haed umwhile been codit in assembly leid, maist notably seestem saftware lik the Unix computer operatin seestem.[5]
Thompson had made a brief attempt to produce a system coded in an early version of C—before structures—in 1972, but gave up the effort.Unknown parameter
|month=
ignored (help)
The scheme of type composition adopted by C owes considerable debt to Algol 68, although it did not, perhaps, emerge in a form that Algol's adherents would approve of.Unknown parameter
|month=
ignored (help)
1980s: ; Verilog first introduced ; Verilog inspired by the C programming language
|month=
ignored (help)