Get it on Google Play
New! Download Unionpedia on your Android™ device!
Faster access than browser!

C (programming language)

Index C (programming language)

C (as in the letter ''c'') is a general-purpose, imperative computer programming language, supporting structured programming, lexical variable scope and recursion, while a static type system prevents many unintended operations. [1]

289 relations: "Hello, World!" program, ?:, Addison-Wesley, Addition, ALGOL, ALGOL 68, American National Standards Institute, AMPL, ANSI C, Application software, Arithmetic, Arity, Array data type, Assembly language, Assignment (computer science), Association for Computing Machinery, Augmented assignment, Automatic variable, AWK, B (programming language), Backspace, Backus–Naur form, BCPL, Bell character, Bell Labs, Binary search algorithm, Bit, Bitwise operation, Bjarne Stroustrup, Block (programming), Boehm garbage collector, Boolean algebra, Boolean data type, Bounds checking, Bracket, Brian Kernighan, Buffer overflow, Burroughs large systems, Burroughs MCP, Byte, C, C data types, C dynamic memory allocation, C file input/output, C preprocessor, C Sharp (programming language), C shell, C standard library, C string handling, C syntax, ..., C*, C++, C++11, C--, C11 (C standard revision), C99, Call stack, Callback (computer programming), Carriage return, Ch (computer programming), Character encoding, Cilk, CINT, Clang, Comma operator, Command-line interface, Common Gateway Interface, Comparison of Pascal and C, Comparison of programming languages, Compatibility of C and C++, Compiler, Complex number, Computer architecture, Computer data storage, Computer memory, Computing platform, Conditional (computer programming), Conditional compilation, Control flow, CPL (programming language), Cross-platform, Cyclone (programming language), D (programming language), Dangling pointer, Data type, Declaration (computer programming), Dennis Ritchie, Division (mathematics), Do while loop, Double-precision floating-point format, Dr. Dobb's Journal, Embedded system, Endianness, Englewood Cliffs, New Jersey, Entry point, Enumerated type, Equality (mathematics), Escape sequences in C, Evaluation strategy, Executable, Expression (computer science), External variable, Fixed-point arithmetic, Flexible array member, Floating-point arithmetic, For loop, Formal grammar, Fortran, Free-form language, Function pointer, Function prototype, Functional programming, Garbage collection (computer science), General-purpose language, Generic programming, GNU Compiler Collection, GNU Multiple Precision Arithmetic Library, GNU Scientific Library, Go (programming language), GObject, Goto, Graphical user interface, Higher-order function, Honeywell 6000 series, IBM Personal Computer, IBM System/370, IEEE 754, Imperative programming, Include directive, Increment and decrement operators, Inequality (mathematics), Inline function, Input/output, Institute of Electrical and Electronics Engineers, Instruction selection, Integer (computer science), Intel C++ Compiler, Intermediate representation, International Obfuscated C Code Contest, International Organization for Standardization, Interpreted language, Interpreter (computing), ISO/IEC JTC 1/SC 22, Java (programming language), JavaScript, Julia (programming language), Kernel (operating system), Label (computer science), Library (computing), Limbo (programming language), Linear algebra, Linked list, Linker (computing), Lint (software), List of C-family programming languages, List of compilers, Loader (computing), Locale (computer software), LPC (programming language), Machine code, Macro (computer science), Mainframe computer, Manifest typing, MATLAB, Measuring programming language popularity, Memory leak, Memory management, Microcomputer, Microcontroller, Microsoft Visual C++, Minicomputer, MISRA C, Modular programming, Modulo operation, Multics, Multiplication, Newline, Nim (programming language), Nominal type system, Null pointer, Null-terminated string, O'Reilly Media, Object code, Object-oriented programming, Objective-C, Operating system, Operator (computer programming), Oracle Developer Studio, Order of operations, Order theory, Page break, Parameter (computer programming), Pascal (programming language), PDP-11, PDP-7, Perl, PHP, Pike (programming language), PL/I, Pointer (computer programming), Polymorphism (computer science), Portable C Compiler, Porting, POSIX, Prentice Hall, Preprocessor, Printf format string, Procedural programming, Processing (programming language), Programming language, PurifyPlus, Python (programming language), Qsort, Record (computer science), Recursion (computer science), Reference (computer science), Reference implementation, Register (keyword), Research Unix, Restrict, Ring (programming language), Row- and column-major order, Run time (program lifecycle phase), Runtime system, Rust (programming language), Scope (computer science), Seed7, Segmentation fault, Semicolon, Sequence point, Serialization, Sigil (computer programming), SIGPLAN, Single UNIX Specification, Sizeof, Smalltalk, Software portability, Source code, Source-to-source compiler, Space (punctuation), Specification (technical standard), Split-C, Standard streams, Statement (computer science), Static (keyword), Static variable, Stephen C. Johnson, String (computer science), String literal, Strong and weak typing, Struct (C programming language), Structured programming, Studentlitteratur, Subroutine, Subset, Subtraction, Supercomputer, Swift (programming language), Switch statement, Syntactic sugar, Syntax (programming languages), System programming, Tab key, The C Programming Language, Tree (data structure), Type conversion, Type I and type II errors, Type punning, Type system, Unicode, Unified Parallel C, Union type, Unix, Unix-like, User (computing), Vala (programming language), Valgrind, Value (computer science), Variable-length array, Variadic macro, Verilog, Void type, Volatile (computer programming), W. W. Norton & Company, Watcom C/C++, While loop, Whitespace character, Wolfram Mathematica, Working group. Expand index (239 more) »

"Hello, World!" program

A "Hello, World!" program is a computer program that outputs or displays "Hello, World!" to a user.

New!!: C (programming language) and "Hello, World!" program · See more »


In computer programming, ?: is a ternary operator that is part of the syntax for basic conditional expressions in several programming languages.

New!!: C (programming language) and ?: · See more »


Addison-Wesley is a publisher of textbooks and computer literature.

New!!: C (programming language) and Addison-Wesley · See more »


Addition (often signified by the plus symbol "+") is one of the four basic operations of arithmetic; the others are subtraction, multiplication and division.

New!!: C (programming language) and Addition · See more »


ALGOL (short for "Algorithmic Language") is a family of imperative computer programming languages, originally developed in the mid-1950s, which greatly influenced many other languages and was the standard method for algorithm description used by the ACM in textbooks and academic sources for more than thirty years.

New!!: C (programming language) and ALGOL · See more »


ALGOL 68 (short for Algorithmic Language 1968) is an imperative computer programming language that was conceived as a successor to the ALGOL 60 programming language, designed with the goal of a much wider scope of application and more rigorously defined syntax and semantics.

New!!: C (programming language) and ALGOL 68 · See more »

American National Standards Institute

The American National Standards Institute (ANSI) is a private non-profit organization that oversees the development of voluntary consensus standards for products, services, processes, systems, and personnel in the United States.

New!!: C (programming language) and American National Standards Institute · See more »


A Mathematical Programming Language (AMPL) is an algebraic modeling language to describe and solve high-complexity problems for large-scale mathematical computing (i.e., large-scale optimization and scheduling-type problems).

New!!: C (programming language) and AMPL · See more »


ANSI C, ISO C and Standard C refer to the successive standards for the C programming language published by the American National Standards Institute (ANSI) and the International Organization for Standardization (ISO).

New!!: C (programming language) and ANSI C · See more »

Application software

An application software (app or application for short) is a computer software designed to perform a group of coordinated functions, tasks, or activities for the benefit of the user.

New!!: C (programming language) and Application software · See more »


Arithmetic (from the Greek ἀριθμός arithmos, "number") is a branch of mathematics that consists of the study of numbers, especially the properties of the traditional operations on them—addition, subtraction, multiplication and division.

New!!: C (programming language) and Arithmetic · See more »


In logic, mathematics, and computer science, the arity of a function or operation is the number of arguments or operands that the function takes.

New!!: C (programming language) and Arity · See more »

Array data type

Language support for array types may include certain built-in array data types, some syntactic constructions (array type constructors) that the programmer may use to define such types and declare array variables, and special notation for indexing array elements.

New!!: C (programming language) and Array data type · See more »

Assembly language

An assembly (or assembler) language, often abbreviated asm, is a low-level programming language, in which there is a very strong (but often not one-to-one) correspondence between the assembly program statements and the architecture's machine code instructions.

New!!: C (programming language) and Assembly language · See more »

Assignment (computer science)

In computer programming, an assignment statement sets and/or re-sets the value stored in the storage location(s) denoted by a variable name; in other words, it copies a value into the variable.

New!!: C (programming language) and Assignment (computer science) · See more »

Association for Computing Machinery

The Association for Computing Machinery (ACM) is an international learned society for computing.

New!!: C (programming language) and Association for Computing Machinery · See more »

Augmented assignment

Augmented assignment (or compound assignment) is the name given to certain assignment operators in certain programming languages (especially those derived from C).

New!!: C (programming language) and Augmented assignment · See more »

Automatic variable

In computer programming, an automatic variable is a local variable which is allocated and deallocated automatically when program flow enters and leaves the variable's scope.

New!!: C (programming language) and Automatic variable · See more »


AWK is a programming language designed for text processing and typically used as a data extraction and reporting tool.

New!!: C (programming language) and AWK · See more »

B (programming language)

B is a programming language developed at Bell Labs circa 1969.

New!!: C (programming language) and B (programming language) · See more »


Backspace is the keyboard key that originally pushed the typewriter carriage one position backwards, and in modern computer systems moves the display cursor one position backwards,"Backwards" means to the left for left-to-right languages.

New!!: C (programming language) and Backspace · See more »

Backus–Naur form

In computer science, Backus–Naur form or Backus normal form (BNF) is a notation technique for context-free grammars, often used to describe the syntax of languages used in computing, such as computer programming languages, document formats, instruction sets and communication protocols.

New!!: C (programming language) and Backus–Naur form · See more »


BCPL ("Basic Combined Programming Language"; or 'Before C Programming Language' (a common humorous backronym)) is a procedural, imperative, and structured computer programming language.

New!!: C (programming language) and BCPL · See more »

Bell character

A bell code (sometimes bell character) is a device control code originally sent to ring a small electromechanical bell on tickers and other teleprinters and teletypewriters to alert operators at the other end of the line, often of an incoming message.

New!!: C (programming language) and Bell character · See more »

Bell Labs

Nokia Bell Labs (formerly named AT&T Bell Laboratories, Bell Telephone Laboratories and Bell Labs) is an American research and scientific development company, owned by Finnish company Nokia.

New!!: C (programming language) and Bell Labs · See more »

Binary search algorithm

In computer science, binary search, also known as half-interval search,logarithmic search, or binary chop, is a search algorithm that finds the position of a target value within a sorted array.

New!!: C (programming language) and Binary search algorithm · See more »


The bit (a portmanteau of binary digit) is a basic unit of information used in computing and digital communications.

New!!: C (programming language) and Bit · See more »

Bitwise operation

In digital computer programming, a bitwise operation operates on one or more bit patterns or binary numerals at the level of their individual bits.

New!!: C (programming language) and Bitwise operation · See more »

Bjarne Stroustrup

Bjarne Stroustrup (born 30 December 1950) is a Danish computer scientist, who is most notable for the creation and development of the widely used C++ programming language.

New!!: C (programming language) and Bjarne Stroustrup · See more »

Block (programming)

In computer programming, a block or code block is a lexical structure of source code which is grouped together.

New!!: C (programming language) and Block (programming) · See more »

Boehm garbage collector

In computer science, the Boehm–Demers–Weiser garbage collector, often simply known as Boehm GC, is a conservative garbage collector for C and C++.

New!!: C (programming language) and Boehm garbage collector · See more »

Boolean algebra

In mathematics and mathematical logic, Boolean algebra is the branch of algebra in which the values of the variables are the truth values true and false, usually denoted 1 and 0 respectively.

New!!: C (programming language) and Boolean algebra · See more »

Boolean data type

In computer science, the Boolean data type is a data type that has one of two possible values (usually denoted true and false), intended to represent the two truth values of logic and Boolean algebra.

New!!: C (programming language) and Boolean data type · See more »

Bounds checking

In computer programming, bounds checking is any method of detecting whether a variable is within some bounds before it is used.

New!!: C (programming language) and Bounds checking · See more »


A bracket is a tall punctuation mark typically used in matched pairs within text, to set apart or interject other text.

New!!: C (programming language) and Bracket · See more »

Brian Kernighan

Brian Wilson Kernighan (born January 1, 1942) is a Canadian computer scientist who worked at Bell Labs alongside Unix creators Ken Thompson and Dennis Ritchie and contributed to the development of Unix.

New!!: C (programming language) and Brian Kernighan · See more »

Buffer overflow

In information security and programming, a buffer overflow, or buffer overrun, is an anomaly where a program, while writing data to a buffer, overruns the buffer's boundary and overwrites adjacent memory locations.

New!!: C (programming language) and Buffer overflow · See more »

Burroughs large systems

In the 1970s, Burroughs Corporation was organized into three divisions with very different product line architectures for high-end, mid-range, and entry-level business computer systems.

New!!: C (programming language) and Burroughs large systems · See more »

Burroughs MCP

The MCP (Master Control Program) is the proprietary operating system of the Burroughs small, medium and large systems, including the Unisys Clearpath/MCP systems.

New!!: C (programming language) and Burroughs MCP · See more »


The byte is a unit of digital information that most commonly consists of eight bits, representing a binary number.

New!!: C (programming language) and Byte · See more »


C is the third letter in the English alphabet and a letter of the alphabets of many other writing systems which inherited it from the Latin alphabet.

New!!: C (programming language) and C · See more »

C data types

In the C programming language, data types are declarations for memory locations or variables that determine the characteristics of the data that may be stored and the methods (operations) of processing that are permitted involving them.

New!!: C (programming language) and C data types · See more »

C dynamic memory allocation

C dynamic memory allocation refers to performing manual memory management for dynamic memory allocation in the C programming language via a group of functions in the C standard library, namely,, and.

New!!: C (programming language) and C dynamic memory allocation · See more »

C file input/output

The C programming language provides many standard library functions for file input and output.

New!!: C (programming language) and C file input/output · See more »

C preprocessor

The C preprocessor or cpp is the macro preprocessor for the C and C++ computer programming languages.

New!!: C (programming language) and C preprocessor · See more »

C Sharp (programming language)

C# (/si: ʃɑːrp/) is a multi-paradigm programming language encompassing strong typing, imperative, declarative, functional, generic, object-oriented (class-based), and component-oriented programming disciplines.

New!!: C (programming language) and C Sharp (programming language) · See more »

C shell

The C shell (csh or the improved version, tcsh) is a Unix shell created by Bill Joy while he was a graduate student at University of California, Berkeley in the late 1970s.

New!!: C (programming language) and C shell · See more »

C standard library

The C standard library or libc is the standard library for the C programming language, as specified in the ANSI C standard.

New!!: C (programming language) and C standard library · See more »

C string handling

The C programming language has a set of functions implementing operations on strings (character strings and byte strings) in its standard library.

New!!: C (programming language) and C string handling · See more »

C syntax

The syntax of the C programming language, the rules governing writing of software in the language, is designed to allow for programs that are extremely terse, have a close relationship with the resulting object code, and yet provide relatively high-level data abstraction.

New!!: C (programming language) and C syntax · See more »


C* is an object-oriented, data-parallel superset of ANSI C with synchronous semantics.

New!!: C (programming language) and C* · See more »


C++ ("see plus plus") is a general-purpose programming language.

New!!: C (programming language) and C++ · See more »


C++11 is a version of the standard for the programming language C++.

New!!: C (programming language) and C++11 · See more »


C-- (pronounced cee minus minus) is a C-like programming language.

New!!: C (programming language) and C-- · See more »

C11 (C standard revision)

C11 (formerly C1X) is an informal name for ISO/IEC 9899:2011, the current standard for the C programming language.

New!!: C (programming language) and C11 (C standard revision) · See more »


C99 (previously known as C9X) is an informal name for ISO/IEC 9899:1999, a past version of the C programming language standard.

New!!: C (programming language) and C99 · See more »

Call stack

In computer science, a call stack is a stack data structure that stores information about the active subroutines of a computer program.

New!!: C (programming language) and Call stack · See more »

Callback (computer programming)

In computer programming, a callback, also known as a "call-after" function, is any executable code that is passed as an argument to other code, which is expected to call back (execute) the argument at a given time.

New!!: C (programming language) and Callback (computer programming) · See more »

Carriage return

A carriage return, sometimes known as a cartridge return and often shortened to CR, or return, is a control character or mechanism used to reset a device's position to the beginning of a line of text.

New!!: C (programming language) and Carriage return · See more »

Ch (computer programming)

Ch is a proprietary cross-platform C and C++ interpreter and scripting language environment, originally designed by Harry H. Cheng as a scripting language for beginners to learn mathematics, computing, numerical analysis (numeric methods), and programming in C/C++.

New!!: C (programming language) and Ch (computer programming) · See more »

Character encoding

Character encoding is used to represent a repertoire of characters by some kind of encoding system.

New!!: C (programming language) and Character encoding · See more »


Cilk, Cilk++ and Cilk Plus are general-purpose programming languages designed for multithreaded parallel computing.

New!!: C (programming language) and Cilk · See more »


CINT is a command line C/C++ interpreter that is included in the object oriented data analysis package ROOT.

New!!: C (programming language) and CINT · See more »


Clang is a compiler front end for the programming languages C, C++, Objective-C, Objective-C++, OpenMP, OpenCL, and CUDA.

New!!: C (programming language) and Clang · See more »

Comma operator

In the C and C++ programming languages, the comma operator (represented by the token) is a binary operator that evaluates its first operand and discards the result, and then evaluates the second operand and returns this value (and type).

New!!: C (programming language) and Comma operator · See more »

Command-line interface

A command-line interface or command language interpreter (CLI), also known as command-line user interface, console user interface and character user interface (CUI), is a means of interacting with a computer program where the user (or client) issues commands to the program in the form of successive lines of text (command lines).

New!!: C (programming language) and Command-line interface · See more »

Common Gateway Interface

In computing, Common Gateway Interface (CGI) offers a standard protocol for web servers to execute programs that execute like console applications (also called command-line interface programs) running on a server that generates web pages dynamically.

New!!: C (programming language) and Common Gateway Interface · See more »

Comparison of Pascal and C

The computer programming languages C and Pascal have similar times of origin, influences, and purposes.

New!!: C (programming language) and Comparison of Pascal and C · See more »

Comparison of programming languages

Programming languages are used for controlling the behavior of a machine (often a computer).

New!!: C (programming language) and Comparison of programming languages · See more »

Compatibility of C and C++

The C and C++ programming languages are closely related but have many significant differences.

New!!: C (programming language) and Compatibility of C and C++ · See more »


A compiler is computer software that transforms computer code written in one programming language (the source language) into another programming language (the target language).

New!!: C (programming language) and Compiler · See more »

Complex number

A complex number is a number that can be expressed in the form, where and are real numbers, and is a solution of the equation.

New!!: C (programming language) and Complex number · See more »

Computer architecture

In computer engineering, computer architecture is a set of rules and methods that describe the functionality, organization, and implementation of computer systems.

New!!: C (programming language) and Computer architecture · See more »

Computer data storage

Computer data storage, often called storage or memory, is a technology consisting of computer components and recording media that are used to retain digital data.

New!!: C (programming language) and Computer data storage · See more »

Computer memory

In computing, memory refers to the computer hardware integrated circuits that store information for immediate use in a computer; it is synonymous with the term "primary storage".

New!!: C (programming language) and Computer memory · See more »

Computing platform

A computing platform or digital platform is the environment in which a piece of software is executed.

New!!: C (programming language) and Computing platform · See more »

Conditional (computer programming)

In computer science, conditional statements, conditional expressions and conditional constructs are features of a programming language, which perform different computations or actions depending on whether a programmer-specified boolean condition evaluates to true or false.

New!!: C (programming language) and Conditional (computer programming) · See more »

Conditional compilation

In computer programming, conditional compilation is compilation implementing methods which allow the compiler to produce differences in the executable program produced and controlled by parameters that are provided during compilation.

New!!: C (programming language) and Conditional compilation · See more »

Control flow

In computer science, control flow (or flow of control) is the order in which individual statements, instructions or function calls of an imperative program are executed or evaluated.

New!!: C (programming language) and Control flow · See more »

CPL (programming language)

CPL (Combined Programming Language) is a multi-paradigm programming language, that was developed in the early 1960s.

New!!: C (programming language) and CPL (programming language) · See more »


In computing, cross-platform software (also multi-platform software or platform-independent software) is computer software that is implemented on multiple computing platforms.

New!!: C (programming language) and Cross-platform · See more »

Cyclone (programming language)

The Cyclone programming language is intended to be a safe dialect of the C language.

New!!: C (programming language) and Cyclone (programming language) · See more »

D (programming language)

D is an object-oriented, imperative, multi-paradigm system programming language created by Walter Bright of Digital Mars and released in 2001.

New!!: C (programming language) and D (programming language) · See more »

Dangling pointer

Dangling pointers and wild pointers in computer programming are pointers that do not point to a valid object of the appropriate type.

New!!: C (programming language) and Dangling pointer · See more »

Data type

In computer science and computer programming, a data type or simply type is a classification of data which tells the compiler or interpreter how the programmer intends to use the data.

New!!: C (programming language) and Data type · See more »

Declaration (computer programming)

In computer programming, a declaration is a language construct that specifies properties of an identifier: it declares what a word (identifier) "means".

New!!: C (programming language) and Declaration (computer programming) · See more »

Dennis Ritchie

Dennis MacAlistair Ritchie (September 9, 1941 – October 12, 2011) was an American computer scientist.

New!!: C (programming language) and Dennis Ritchie · See more »

Division (mathematics)

Division is one of the four basic operations of arithmetic, the others being addition, subtraction, and multiplication.

New!!: C (programming language) and Division (mathematics) · See more »

Do while loop

In most computer programming languages, a do while loop is a control flow statement that executes a block of code at least once, and then repeatedly executes the block, or not, depending on a given boolean condition at the end of the block.

New!!: C (programming language) and Do while loop · See more »

Double-precision floating-point format

Double-precision floating-point format is a computer number format, usually occupying 64 bits in computer memory; it represents a wide dynamic range of numeric values by using a floating radix point.

New!!: C (programming language) and Double-precision floating-point format · See more »

Dr. Dobb's Journal


New!!: C (programming language) and Dr. Dobb's Journal · See more »

Embedded system

An embedded system is a computer system with a dedicated function within a larger mechanical or electrical system, often with real-time computing constraints.

New!!: C (programming language) and Embedded system · See more »


Endianness refers to the sequential order in which bytes are arranged into larger numerical values when stored in memory or when transmitted over digital links.

New!!: C (programming language) and Endianness · See more »

Englewood Cliffs, New Jersey

Englewood Cliffs is a borough in Bergen County, New Jersey, United States.

New!!: C (programming language) and Englewood Cliffs, New Jersey · See more »

Entry point

In computer programming, an entry point is where control is transferred from the operating system to a computer program, at which place the processor enters a program or a code fragment and execution begins.

New!!: C (programming language) and Entry point · See more »

Enumerated type

In computer programming, an enumerated type (also called enumeration, enum, or factor in the R programming language, and a categorical variable in statistics) is a data type consisting of a set of named values called elements, members, enumeral, or enumerators of the type.

New!!: C (programming language) and Enumerated type · See more »

Equality (mathematics)

In mathematics, equality is a relationship between two quantities or, more generally two mathematical expressions, asserting that the quantities have the same value, or that the expressions represent the same mathematical object.

New!!: C (programming language) and Equality (mathematics) · See more »

Escape sequences in C

Escape sequences are used in the programming languages C and C++, and also in many more languages (with some variations) like Java and C#.

New!!: C (programming language) and Escape sequences in C · See more »

Evaluation strategy

Evaluation strategies are used by programming languages to determine when to evaluate the argument(s) of a function call (for function, also read: operation, method, or relation) and what kind of value to pass to the function.

New!!: C (programming language) and Evaluation strategy · See more »


In computing, executable code or an executable file or executable program, sometimes simply referred to as an executable or binary, causes a computer "to perform indicated tasks according to encoded instructions," as opposed to a data file that must be parsed by a program to be meaningful.

New!!: C (programming language) and Executable · See more »

Expression (computer science)

An expression in a programming language is a combination of one or more constants, variables, operators, and functions that the programming language interprets (according to its particular rules of precedence and of association) and computes to produce ("to return", in a stateful environment) another value.

New!!: C (programming language) and Expression (computer science) · See more »

External variable

In the C programming language, an external variable is a variable defined outside any function block.

New!!: C (programming language) and External variable · See more »

Fixed-point arithmetic

In computing, a fixed-point number representation is a real data type for a number that has a fixed number of digits after (and sometimes also before) the radix point (after the decimal point '.' in English decimal notation).

New!!: C (programming language) and Fixed-point arithmetic · See more »

Flexible array member

Flexible array member is a feature introduced in the C99 standard of the C programming language (in particular, in section §, item 16, page 103).

New!!: C (programming language) and Flexible array member · See more »

Floating-point arithmetic

In computing, floating-point arithmetic is arithmetic using formulaic representation of real numbers as an approximation so as to support a trade-off between range and precision.

New!!: C (programming language) and Floating-point arithmetic · See more »

For loop

In computer science, a for-loop (or simply for loop) is a control flow statement for specifying iteration, which allows code to be executed repeatedly.

New!!: C (programming language) and For loop · See more »

Formal grammar

In formal language theory, a grammar (when the context is not given, often called a formal grammar for clarity) is a set of production rules for strings in a formal language.

New!!: C (programming language) and Formal grammar · See more »


Fortran (formerly FORTRAN, derived from Formula Translation) is a general-purpose, compiled imperative programming language that is especially suited to numeric computation and scientific computing.

New!!: C (programming language) and Fortran · See more »

Free-form language

In computer programming, a free-form language is a programming language in which the positioning of characters on the page in program text is insignificant.

New!!: C (programming language) and Free-form language · See more »

Function pointer

A function pointer, also called a subroutine pointer or procedure pointer, is a pointer that points to a function.

New!!: C (programming language) and Function pointer · See more »

Function prototype

In computer programming, a function prototype or function interface is a declaration of a function that specifies the function's name and type signature (arity, data types of parameters, and return type), but omits the function body.

New!!: C (programming language) and Function prototype · See more »

Functional programming

In computer science, functional programming is a programming paradigm—a style of building the structure and elements of computer programs—that treats computation as the evaluation of mathematical functions and avoids changing-state and mutable data.

New!!: C (programming language) and Functional programming · See more »

Garbage collection (computer science)

In computer science, garbage collection (GC) is a form of automatic memory management.

New!!: C (programming language) and Garbage collection (computer science) · See more »

General-purpose language

A general-purpose language is a computer language that is broadly applicable across application domains, and lacks specialized features for a particular domain.

New!!: C (programming language) and General-purpose language · See more »

Generic programming

Generic programming is a style of computer programming in which algorithms are written in terms of types to-be-specified-later that are then instantiated when needed for specific types provided as parameters.

New!!: C (programming language) and Generic programming · See more »

GNU Compiler Collection

The GNU Compiler Collection (GCC) is a compiler system produced by the GNU Project supporting various programming languages.

New!!: C (programming language) and GNU Compiler Collection · See more »

GNU Multiple Precision Arithmetic Library

GNU Multiple Precision Arithmetic Library (GMP) is a free library for arbitrary-precision arithmetic, operating on signed integers, rational numbers, and floating point numbers.

New!!: C (programming language) and GNU Multiple Precision Arithmetic Library · See more »

GNU Scientific Library

The GNU Scientific Library (or GSL) is a software library for numerical computations in applied mathematics and science.

New!!: C (programming language) and GNU Scientific Library · See more »

Go (programming language)

Go (often referred to as Golang) is a programming language created at Google in 2009 by Robert Griesemer, Rob Pike, and Ken Thompson.

New!!: C (programming language) and Go (programming language) · See more »


The GLib Object System, or GObject, is a free software library providing a portable object system and transparent cross-language interoperability.

New!!: C (programming language) and GObject · See more »


GoTo (goto, GOTO, GO TO or other case combinations, depending on the programming language) is a statement found in many computer programming languages.

New!!: C (programming language) and Goto · See more »

Graphical user interface

The graphical user interface (GUI), is a type of user interface that allows users to interact with electronic devices through graphical icons and visual indicators such as secondary notation, instead of text-based user interfaces, typed command labels or text navigation.

New!!: C (programming language) and Graphical user interface · See more »

Higher-order function

In mathematics and computer science, a higher-order function (also functional, functional form or functor) is a function that does at least one of the following.

New!!: C (programming language) and Higher-order function · See more »

Honeywell 6000 series

The Honeywell 6000 series computers were rebadged versions of General Electric's 600-series mainframes manufactured by Honeywell International, Inc. from 1970 to 1989.

New!!: C (programming language) and Honeywell 6000 series · See more »

IBM Personal Computer

The IBM Personal Computer, commonly known as the IBM PC, is the original version and progenitor of the IBM PC compatible hardware platform.

New!!: C (programming language) and IBM Personal Computer · See more »

IBM System/370

The IBM System/370 (S/370) was a model range of IBM mainframe computers announced on June 30, 1970 as the successors to the System/360 family.

New!!: C (programming language) and IBM System/370 · See more »

IEEE 754

The IEEE Standard for Floating-Point Arithmetic (IEEE 754) is a technical standard for floating-point computation established in 1985 by the Institute of Electrical and Electronics Engineers (IEEE).

New!!: C (programming language) and IEEE 754 · See more »

Imperative programming

In computer science, imperative programming is a programming paradigm that uses statements that change a program's state.

New!!: C (programming language) and Imperative programming · See more »

Include directive

Many programming languages and other computer files have a directive, often called include (as well as copy and import), that causes the contents of a second file to be inserted into the original file.

New!!: C (programming language) and Include directive · See more »

Increment and decrement operators

Increment and decrement operators are unary operators that add or subtract one from their operand, respectively.

New!!: C (programming language) and Increment and decrement operators · See more »

Inequality (mathematics)

In mathematics, an inequality is a relation that holds between two values when they are different (see also: equality).

New!!: C (programming language) and Inequality (mathematics) · See more »

Inline function

In the C and C++ programming languages, an inline function is one qualified with the keyword inline; this serves two purposes.

New!!: C (programming language) and Inline function · See more »


In computing, input/output or I/O (or, informally, io or IO) is the communication between an information processing system, such as a computer, and the outside world, possibly a human or another information processing system.

New!!: C (programming language) and Input/output · See more »

Institute of Electrical and Electronics Engineers

The Institute of Electrical and Electronics Engineers (IEEE) is a professional association with its corporate office in New York City and its operations center in Piscataway, New Jersey.

New!!: C (programming language) and Institute of Electrical and Electronics Engineers · See more »

Instruction selection

In computer science, instruction selection is the stage of a compiler backend that transforms its middle-level intermediate representation (IR) into a low-level IR where each operation directly corresponds to an instruction available on the target machine.

New!!: C (programming language) and Instruction selection · See more »

Integer (computer science)

In computer science, an integer is a datum of integral data type, a data type that represents some range of mathematical integers.

New!!: C (programming language) and Integer (computer science) · See more »

Intel C++ Compiler

Intel C++ Compiler, also known as icc or icl, is a group of C and C++ compilers from Intel available for Windows, Mac, Linux, FreeBSD and Intel-based Android devices.

New!!: C (programming language) and Intel C++ Compiler · See more »

Intermediate representation

An Intermediate representation (IR) is the data structure or code used internally by a compiler or virtual machine to represent source code.

New!!: C (programming language) and Intermediate representation · See more »

International Obfuscated C Code Contest

The International Obfuscated C Code Contest (abbreviated IOCCC) is a computer programming contest for the most creatively obfuscated C code.

New!!: C (programming language) and International Obfuscated C Code Contest · See more »

International Organization for Standardization

The International Organization for Standardization (ISO) is an international standard-setting body composed of representatives from various national standards organizations.

New!!: C (programming language) and International Organization for Standardization · See more »

Interpreted language

An interpreted language is a type of programming language for which most of its implementations execute instructions directly and freely, without previously compiling a program into machine-language instructions.

New!!: C (programming language) and Interpreted language · See more »

Interpreter (computing)

In computer science, an interpreter is a computer program that directly executes, i.e. performs, instructions written in a programming or scripting language, without requiring them previously to have been compiled into a machine language program.

New!!: C (programming language) and Interpreter (computing) · See more »


ISO/IEC JTC 1/SC 22 Programming languages, their environments and system software interfaces is a standardization subcommittee of the Joint Technical Committee ISO/IEC JTC 1 of the International Organization for Standardization (ISO) and the International Electrotechnical Commission (IEC) that develops and facilitates standards within the fields of programming languages, their environments and system software interfaces.

New!!: C (programming language) and ISO/IEC JTC 1/SC 22 · See more »

Java (programming language)

Java is a general-purpose computer-programming language that is concurrent, class-based, object-oriented, and specifically designed to have as few implementation dependencies as possible.

New!!: C (programming language) and Java (programming language) · See more »


JavaScript, often abbreviated as JS, is a high-level, interpreted programming language.

New!!: C (programming language) and JavaScript · See more »

Julia (programming language)

Julia is a high-level dynamic programming language designed to address the needs of high-performance numerical analysis and computational science, without the typical need of separate compilation to be fast, while also being effective for general-purpose programming, web use or as a specification language.

New!!: C (programming language) and Julia (programming language) · See more »

Kernel (operating system)

The kernel is a computer program that is the core of a computer's operating system, with complete control over everything in the system.

New!!: C (programming language) and Kernel (operating system) · See more »

Label (computer science)

A label in a programming language is a sequence of characters that identifies a location within source code.

New!!: C (programming language) and Label (computer science) · See more »

Library (computing)

In computer science, a library is a collection of non-volatile resources used by computer programs, often for software development.

New!!: C (programming language) and Library (computing) · See more »

Limbo (programming language)

Limbo is a programming language for writing distributed systems and is the language used to write applications for the Inferno operating system.

New!!: C (programming language) and Limbo (programming language) · See more »

Linear algebra

Linear algebra is the branch of mathematics concerning linear equations such as linear functions such as and their representations through matrices and vector spaces.

New!!: C (programming language) and Linear algebra · See more »

Linked list

In computer science, a linked list is a linear collection of data elements, whose order is not given by their physical placement in memory.

New!!: C (programming language) and Linked list · See more »

Linker (computing)

In computing, a linker or link editor is a computer utility program that takes one or more object files generated by a compiler and combines them into a single executable file, library file, or another 'object' file.

New!!: C (programming language) and Linker (computing) · See more »

Lint (software)

A linter or lint refers to tools that analyze source code to flag programming errors, bugs, stylistic errors, and suspicious constructs.

New!!: C (programming language) and Lint (software) · See more »

List of C-family programming languages

Due to the success of the C programming language and some of its derivatives, C-family programming languages span a large variety of programming paradigms, conceptual models, and run-time environments.

New!!: C (programming language) and List of C-family programming languages · See more »

List of compilers

This page is intended to list all current compilers, compiler generators, interpreters, translators, tool foundations, assemblers, automatable command line interfaces (shells), etc.

New!!: C (programming language) and List of compilers · See more »

Loader (computing)

In computer systems a loader is the part of an operating system that is responsible for loading programs and libraries.

New!!: C (programming language) and Loader (computing) · See more »

Locale (computer software)

In computing, a locale is a set of parameters that defines the user's language, region and any special variant preferences that the user wants to see in their user interface.

New!!: C (programming language) and Locale (computer software) · See more »

LPC (programming language)

LPC (short for Lars Pensjö C) is an object-oriented programming language derived from C and developed originally by Lars Pensjö to facilitate MUD building on LPMuds.

New!!: C (programming language) and LPC (programming language) · See more »

Machine code

Machine code is a computer program written in machine language instructions that can be executed directly by a computer's central processing unit (CPU).

New!!: C (programming language) and Machine code · See more »

Macro (computer science)

A macro (short for "macroinstruction", from Greek μακρός 'long') in computer science is a rule or pattern that specifies how a certain input sequence (often a sequence of characters) should be mapped to a replacement output sequence (also often a sequence of characters) according to a defined procedure.

New!!: C (programming language) and Macro (computer science) · See more »

Mainframe computer

Mainframe computers (colloquially referred to as "big iron") are computers used primarily by large organizations for critical applications; bulk data processing, such as census, industry and consumer statistics, enterprise resource planning; and transaction processing.

New!!: C (programming language) and Mainframe computer · See more »

Manifest typing

In computer science, manifest typing is explicit identification by the software programmer of the type of each variable being declared.

New!!: C (programming language) and Manifest typing · See more »


MATLAB (matrix laboratory) is a multi-paradigm numerical computing environment and proprietary programming language developed by MathWorks.

New!!: C (programming language) and MATLAB · See more »

Measuring programming language popularity

It is difficult to determine which programming languages are "most widely used" because what usage means varies by context.

New!!: C (programming language) and Measuring programming language popularity · See more »

Memory leak

In computer science, a memory leak is a type of resource leak that occurs when a computer program incorrectly manages memory allocations in such a way that memory which is no longer needed is not released.

New!!: C (programming language) and Memory leak · See more »

Memory management

Memory management is a form of resource management applied to computer memory.

New!!: C (programming language) and Memory management · See more »


A microcomputer is a small, relatively inexpensive computer with a microprocessor as its central processing unit (CPU).

New!!: C (programming language) and Microcomputer · See more »


A microcontroller (MCU for microcontroller unit, or UC for μ-controller) is a small computer on a single integrated circuit.

New!!: C (programming language) and Microcontroller · See more »

Microsoft Visual C++

Microsoft Visual C++ (often abbreviated to MSVC) is an integrated development environment (IDE) product from Microsoft for the C, C++, and C++/CLI programming languages.

New!!: C (programming language) and Microsoft Visual C++ · See more »


A minicomputer, or colloquially mini, is a class of smaller computers that was developed in the mid-1960s and sold for much less than mainframe and mid-size computers from IBM and its direct competitors.

New!!: C (programming language) and Minicomputer · See more »


MISRA C is a set of software development guidelines for the C programming language developed by MISRA (Motor Industry Software Reliability Association).

New!!: C (programming language) and MISRA C · See more »

Modular programming

Modular programming is a software design technique that emphasizes separating the functionality of a programme into independent, interchangeable modules, such that each contains everything necessary to execute only one aspect of the desired functionality.

New!!: C (programming language) and Modular programming · See more »

Modulo operation

In computing, the modulo operation finds the remainder after division of one number by another (sometimes called modulus).

New!!: C (programming language) and Modulo operation · See more »


Multics (Multiplexed Information and Computing Service) is an influential early time-sharing operating system, based around the concept of a single-level memory.

New!!: C (programming language) and Multics · See more »


Multiplication (often denoted by the cross symbol "×", by a point "⋅", by juxtaposition, or, on computers, by an asterisk "∗") is one of the four elementary mathematical operations of arithmetic; with the others being addition, subtraction and division.

New!!: C (programming language) and Multiplication · See more »


Newline (frequently called line ending, end of line (EOL), line feed, or line break) is a control character or sequence of control characters in a character encoding specification, e.g. ASCII or EBCDIC.

New!!: C (programming language) and Newline · See more »

Nim (programming language)

Nim (formerly named Nimrod) is an imperative, multi-paradigm, compiled programming language designed and developed by Andreas Rumpf.

New!!: C (programming language) and Nim (programming language) · See more »

Nominal type system

In computer science, a nominal or nominative type system (or name-based type system) is a major class of type system, in which compatibility and equivalence of data types is determined by explicit declarations and/or the name of the types.

New!!: C (programming language) and Nominal type system · See more »

Null pointer

In computing, a null pointer has a value reserved for indicating that the pointer does not refer to a valid object.

New!!: C (programming language) and Null pointer · See more »

Null-terminated string

In computer programming, a null-terminated string is a character string stored as an array containing the characters and terminated with a null character ('\0', called NUL in ASCII).

New!!: C (programming language) and Null-terminated string · See more »

O'Reilly Media

O'Reilly Media (formerly O'Reilly & Associates) is an American media company established by Tim O'Reilly that publishes books and Web sites and produces conferences on computer technology topics.

New!!: C (programming language) and O'Reilly Media · See more »

Object code

In computing, object code or object module is the product of a compiler.

New!!: C (programming language) and Object code · See more »

Object-oriented programming

Object-oriented programming (OOP) is a programming paradigm based on the concept of "objects", which may contain data, in the form of fields, often known as attributes; and code, in the form of procedures, often known as methods. A feature of objects is that an object's procedures can access and often modify the data fields of the object with which they are associated (objects have a notion of "this" or "self").

New!!: C (programming language) and Object-oriented programming · See more »


Objective-C is a general-purpose, object-oriented programming language that adds Smalltalk-style messaging to the C programming language.

New!!: C (programming language) and Objective-C · See more »

Operating system

An operating system (OS) is system software that manages computer hardware and software resources and provides common services for computer programs.

New!!: C (programming language) and Operating system · See more »

Operator (computer programming)

Programming languages typically support a set of operators: constructs which behave generally like functions, but which differ syntactically or semantically from usual functions.

New!!: C (programming language) and Operator (computer programming) · See more »

Oracle Developer Studio

Oracle Developer Studio, formerly named Oracle Solaris Studio, Sun Studio, Sun WorkShop, Forte Developer, and SunPro Compilers, is Oracle Corporation's flagship software development product for the Solaris and Linux operating systems.

New!!: C (programming language) and Oracle Developer Studio · See more »

Order of operations

In mathematics and computer programming, the order of operations (or operator precedence) is a collection of rules that reflect conventions about which procedures to perform first in order to evaluate a given mathematical expression.

New!!: C (programming language) and Order of operations · See more »

Order theory

Order theory is a branch of mathematics which investigates the intuitive notion of order using binary relations.

New!!: C (programming language) and Order theory · See more »

Page break

A page break is a marker in an electronic document that tells the document interpreter that the content which follows is part of a new page.

New!!: C (programming language) and Page break · See more »

Parameter (computer programming)

In computer programming, a parameter (often called formal parameter or formal argument) is a special kind of variable, used in a subroutine to refer to one of the pieces of data provided as input to the subroutine.

New!!: C (programming language) and Parameter (computer programming) · See more »

Pascal (programming language)

Pascal is an imperative and procedural programming language, which Niklaus Wirth designed in 1968–69 and published in 1970, as a small, efficient language intended to encourage good programming practices using structured programming and data structuring. It is named in honor of the French mathematician, philosopher and physicist Blaise Pascal. Pascal was developed on the pattern of the ALGOL 60 language. Wirth had already developed several improvements to this language as part of the ALGOL X proposals, but these were not accepted and Pascal was developed separately and released in 1970. A derivative known as Object Pascal designed for object-oriented programming was developed in 1985; this was used by Apple Computer and Borland in the late 1980s and later developed into Delphi on the Microsoft Windows platform. Extensions to the Pascal concepts led to the Pascal-like languages Modula-2 and Oberon.

New!!: C (programming language) and Pascal (programming language) · See more »


The PDP-11 is a series of 16-bit minicomputers sold by Digital Equipment Corporation (DEC) from 1970 into the 1990s, one of a succession of products in the PDP series.

New!!: C (programming language) and PDP-11 · See more »


The PDP-7 was a minicomputer produced by Digital Equipment Corporation as part of the PDP series.

New!!: C (programming language) and PDP-7 · See more »


Perl is a family of two high-level, general-purpose, interpreted, dynamic programming languages, Perl 5 and Perl 6.

New!!: C (programming language) and Perl · See more »


PHP: Hypertext Preprocessor (or simply PHP) is a server-side scripting language designed for Web development, but also used as a general-purpose programming language.

New!!: C (programming language) and PHP · See more »

Pike (programming language)

Pike is an interpreted, general-purpose, high-level, cross-platform, dynamic programming language, with a syntax similar to that of C. Unlike many other dynamic languages, Pike is both statically and dynamically typed, and requires explicit type definitions.

New!!: C (programming language) and Pike (programming language) · See more »


PL/I (Programming Language One, pronounced) is a procedural, imperative computer programming language designed for scientific, engineering, business and system programming uses.

New!!: C (programming language) and PL/I · See more »

Pointer (computer programming)

In computer science, a pointer is a programming language object that stores the memory address of another value located in computer memory.

New!!: C (programming language) and Pointer (computer programming) · See more »

Polymorphism (computer science)

In programming languages and type theory, polymorphism (from Greek πολύς, polys, "many, much" and μορφή, morphē, "form, shape") is the provision of a single interface to entities of different types.

New!!: C (programming language) and Polymorphism (computer science) · See more »

Portable C Compiler

The Portable C Compiler (also known as pcc or sometimes pccm - portable C compiler machine) is an early compiler for the C programming language written by Stephen C. Johnson of Bell Labs in the mid-1970s, based in part on ideas proposed by Alan Snyder in 1973, and "distributed as the C compiler by Bell Labs...

New!!: C (programming language) and Portable C Compiler · See more »


In software engineering, porting is the process of adapting software for the purpose of achieving some form of execution in a computing environment that is different from the one that a given program (meant for such execution) was originally designed for (e.g. different CPU, operating system, or third party library).

New!!: C (programming language) and Porting · See more »


The Portable Operating System Interface (POSIX) is a family of standards specified by the IEEE Computer Society for maintaining compatibility between operating systems.

New!!: C (programming language) and POSIX · See more »

Prentice Hall

Prentice Hall is a major educational publisher owned by Pearson plc.

New!!: C (programming language) and Prentice Hall · See more »


In computer science, a preprocessor is a program that processes its input data to produce output that is used as input to another program.

New!!: C (programming language) and Preprocessor · See more »

Printf format string

Printf format string refers to a control parameter used by a class of functions in the input/output libraries of C and many other programming languages.

New!!: C (programming language) and Printf format string · See more »

Procedural programming

Procedural programming is a programming paradigm, derived from structured programming, based upon the concept of the procedure call.

New!!: C (programming language) and Procedural programming · See more »

Processing (programming language)

Processing is an open-source computer programming language and integrated development environment (IDE) built for the electronic arts, new media art, and visual design communities with the purpose of teaching non-programmers the fundamentals of computer programming in a visual context.

New!!: C (programming language) and Processing (programming language) · See more »

Programming language

A programming language is a formal language that specifies a set of instructions that can be used to produce various kinds of output.

New!!: C (programming language) and Programming language · See more »


PurifyPlus is a memory debugger program used by software developers to detect memory access errors in programs, especially those written in C or C++.

New!!: C (programming language) and PurifyPlus · See more »

Python (programming language)

Python is an interpreted high-level programming language for general-purpose programming.

New!!: C (programming language) and Python (programming language) · See more »


qsort is a C standard library function that implements a polymorphic sorting algorithm for arrays of arbitrary objects according to a user-provided comparison function.

New!!: C (programming language) and Qsort · See more »

Record (computer science)

In computer science, a record (also called a structure, struct, or compound data) is a basic data structure.

New!!: C (programming language) and Record (computer science) · See more »

Recursion (computer science)

Recursion in computer science is a method of solving a problem where the solution depends on solutions to smaller instances of the same problem (as opposed to iteration).

New!!: C (programming language) and Recursion (computer science) · See more »

Reference (computer science)

In computer science, a reference is a value that enables a program to indirectly access a particular datum, such as a variable's value or a record, in the computer's memory or in some other storage device.

New!!: C (programming language) and Reference (computer science) · See more »

Reference implementation

In the software development process, a reference implementation (or, less frequently, sample implementation or model implementation) is the standard from which all other implementations and corresponding customizations are derived.

New!!: C (programming language) and Reference implementation · See more »

Register (keyword)

In the C programming language and C++, register (not capitalized) is a reserved word (or keyword), type modifier, storage class, and hint.

New!!: C (programming language) and Register (keyword) · See more »

Research Unix

Research Unix is a term used to refer to versions of the Unix operating system for DEC PDP-7, PDP-11, VAX and Interdata 7/32 and 8/32 computers, developed in the Bell Labs Computing Science Research Center (frequently referred to as Department 1127).

New!!: C (programming language) and Research Unix · See more »


In the C programming language, as of the C99 standard, restrict is a keyword that can be used in pointer declarations.

New!!: C (programming language) and Restrict · See more »

Ring (programming language)

Ring is a dynamic and general-purpose programming language.

New!!: C (programming language) and Ring (programming language) · See more »

Row- and column-major order

In computing, row-major order and column-major order are methods for storing multidimensional arrays in linear storage such as random access memory.

New!!: C (programming language) and Row- and column-major order · See more »

Run time (program lifecycle phase)

In computer science, run time, runtime or execution time is the time during which a program is running (executing), in contrast to other program lifecycle phases such as compile time, link time and load time.

New!!: C (programming language) and Run time (program lifecycle phase) · See more »

Runtime system

A runtime system, also called run-time system, primarily implements portions of an execution model.

New!!: C (programming language) and Runtime system · See more »

Rust (programming language)

Rust is a systems programming language sponsored by Mozilla which describes it as a "safe, concurrent, practical language," supporting functional and imperative-procedural paradigms.

New!!: C (programming language) and Rust (programming language) · See more »

Scope (computer science)

In computer programming, the scope of a name binding – an association of a name to an entity, such as a variable – is the region of a computer program where the binding is valid: where the name can be used to refer to the entity.

New!!: C (programming language) and Scope (computer science) · See more »


Seed7 is an extensible general-purpose programming language designed by Thomas Mertes.

New!!: C (programming language) and Seed7 · See more »

Segmentation fault

In computing, a segmentation fault (often shortened to segfault) or access violation is a fault, or failure condition, raised by hardware with memory protection, notifying an operating system (OS) the software has attempted to access a restricted area of memory (a memory access violation).

New!!: C (programming language) and Segmentation fault · See more »


The semicolon or semi colon is a punctuation mark that separates major sentence elements.

New!!: C (programming language) and Semicolon · See more »

Sequence point

A sequence point defines any point in a computer program's execution at which it is guaranteed that all side effects of previous evaluations will have been performed, and no side effects from subsequent evaluations have yet been performed.

New!!: C (programming language) and Sequence point · See more »


In computer science, in the context of data storage, serialization is the process of translating data structures or object state into a format that can be stored (for example, in a file or memory buffer) or transmitted (for example, across a network connection link) and reconstructed later (possibly in a different computer environment).

New!!: C (programming language) and Serialization · See more »

Sigil (computer programming)

In computer programming, a sigil is a symbol attached to a variable name, showing the variable's datatype or scope, usually a prefix, as in $foo, where $ is the sigil.

New!!: C (programming language) and Sigil (computer programming) · See more »


SIGPLAN is the Association for Computing Machinery's Special Interest Group on programming languages.

New!!: C (programming language) and SIGPLAN · See more »

Single UNIX Specification

The Single UNIX Specification (SUS) is the collective name of a family of standards for computer operating systems, compliance with which is required to qualify for using the "UNIX" trademark.

New!!: C (programming language) and Single UNIX Specification · See more »


In the programming languages C and C++, the unary operator sizeof generates the size of a variable or datatype, measured in the number of char-sized storage units required for the type.

New!!: C (programming language) and Sizeof · See more »


Smalltalk is an object-oriented, dynamically typed, reflective programming language.

New!!: C (programming language) and Smalltalk · See more »

Software portability

Portability in high-level computer programming is the usability of the same software in different environments.

New!!: C (programming language) and Software portability · See more »

Source code

In computing, source code is any collection of code, possibly with comments, written using a human-readable programming language, usually as plain text.

New!!: C (programming language) and Source code · See more »

Source-to-source compiler

A source-to-source compiler, transcompiler or transpiler is a type of compiler that takes the source code of a program written in one programming language as its input and produces the equivalent source code in another programming language.

New!!: C (programming language) and Source-to-source compiler · See more »

Space (punctuation)

In writing, a space (&#32) is a blank area that separates words, sentences, syllables (in syllabification) and other written or printed glyphs (characters).

New!!: C (programming language) and Space (punctuation) · See more »

Specification (technical standard)

A specification often refers to a set of documented requirements to be satisfied by a material, design, product, or service.

New!!: C (programming language) and Specification (technical standard) · See more »


Split-C is a parallel extension of the C programming language.

New!!: C (programming language) and Split-C · See more »

Standard streams

In computer programming, standard streams are preconnected input and output communication channels between a computer program and its environment when it begins execution.

New!!: C (programming language) and Standard streams · See more »

Statement (computer science)

In computer programming, a statement is a syntactic unit of an imperative programming language that expresses some action to be carried out.

New!!: C (programming language) and Statement (computer science) · See more »

Static (keyword)

In the C programming language (and its close descendants such as C++ and Objective-C), static is a reserved word controlling both lifetime (as a static variable) and visibility (depending on linkage).

New!!: C (programming language) and Static (keyword) · See more »

Static variable

In computer programming, a static variable is a variable that has been allocated "statically", meaning that its lifetime (or "extent") is the entire run of the program.

New!!: C (programming language) and Static variable · See more »

Stephen C. Johnson

Stephen Curtis Johnson (known as Steve Johnson) is a computer scientist who worked at Bell Labs and AT&T for nearly 20 years.

New!!: C (programming language) and Stephen C. Johnson · See more »

String (computer science)

In computer programming, a string is traditionally a sequence of characters, either as a literal constant or as some kind of variable.

New!!: C (programming language) and String (computer science) · See more »

String literal

A string literal or anonymous string is a type of literal in programming for the representation of a string value within the source code of a computer program.

New!!: C (programming language) and String literal · See more »

Strong and weak typing

In computer programming, programming languages are often colloquially classified as to whether the language's type system makes it strongly typed or weakly typed (loosely typed).

New!!: C (programming language) and Strong and weak typing · See more »

Struct (C programming language)

A struct in the C programming language (and many derivatives) is a composite data type (or record) declaration that defines a physically grouped list of variables to be placed under one name in a block of memory, allowing the different variables to be accessed via a single pointer, or the struct declared name which returns the same address.

New!!: C (programming language) and Struct (C programming language) · See more »

Structured programming

Structured programming is a programming paradigm aimed at improving the clarity, quality, and development time of a computer program by making extensive use of the structured control flow constructs of selection (if/then/else) and repetition (while and for), block structures, and subroutines in contrast to using simple tests and jumps such as the go to statement, which can lead to "spaghetti code" that is potentially difficult to follow and maintain.

New!!: C (programming language) and Structured programming · See more »


Studentlitteratur is an academic publishing company based in Sweden and publishing mostly in Swedish.

New!!: C (programming language) and Studentlitteratur · See more »


In computer programming, a subroutine is a sequence of program instructions that performs a specific task, packaged as a unit.

New!!: C (programming language) and Subroutine · See more »


In mathematics, a set A is a subset of a set B, or equivalently B is a superset of A, if A is "contained" inside B, that is, all elements of A are also elements of B. A and B may coincide.

New!!: C (programming language) and Subset · See more »


Subtraction is an arithmetic operation that represents the operation of removing objects from a collection.

New!!: C (programming language) and Subtraction · See more »


A supercomputer is a computer with a high level of performance compared to a general-purpose computer.

New!!: C (programming language) and Supercomputer · See more »

Swift (programming language)

Swift is a general-purpose, multi-paradigm, compiled programming language developed by Apple Inc. for iOS, macOS, watchOS, tvOS, and Linux.

New!!: C (programming language) and Swift (programming language) · See more »

Switch statement

In computer programming languages, a switch statement is a type of selection control mechanism used to allow the value of a variable or expression to change the control flow of program execution via a multiway branch.

New!!: C (programming language) and Switch statement · See more »

Syntactic sugar

In computer science, syntactic sugar is syntax within a programming language that is designed to make things easier to read or to express.

New!!: C (programming language) and Syntactic sugar · See more »

Syntax (programming languages)

In computer science, the syntax of a computer language is the set of rules that defines the combinations of symbols that are considered to be a correctly structured document or fragment in that language.

New!!: C (programming language) and Syntax (programming languages) · See more »

System programming

System programming (or systems programming) is the activity of programming computer system software.

New!!: C (programming language) and System programming · See more »

Tab key

The tab key (abbreviation of tabulator key or tabular key) on a keyboard is used to advance the cursor to the next tab stop.

New!!: C (programming language) and Tab key · See more »

The C Programming Language

The C Programming Language (sometimes termed K&R, after its authors' initials) is a computer programming book written by Brian Kernighan and Dennis Ritchie, the latter of whom originally designed and implemented the language, as well as co-designed the Unix operating system with which development of the language was closely intertwined.

New!!: C (programming language) and The C Programming Language · See more »

Tree (data structure)

In computer science, a tree is a widely used abstract data type (ADT)—or data structure implementing this ADT—that simulates a hierarchical tree structure, with a root value and subtrees of children with a parent node, represented as a set of linked nodes.

New!!: C (programming language) and Tree (data structure) · See more »

Type conversion

In computer science, type conversion, type casting, and type coercion are different ways of changing an entity of one data type into another.

New!!: C (programming language) and Type conversion · See more »

Type I and type II errors

In statistical hypothesis testing, a type I error is the rejection of a true null hypothesis (also known as a "false positive" finding), while a type II error is failing to reject a false null hypothesis (also known as a "false negative" finding).

New!!: C (programming language) and Type I and type II errors · See more »

Type punning

In computer science, type punning is a common term for any programming technique that subverts or circumvents the type system of a programming language in order to achieve an effect that would be difficult or impossible to achieve within the bounds of the formal language.

New!!: C (programming language) and Type punning · See more »

Type system

In programming languages, a type system is a set of rules that assigns a property called type to the various constructs of a computer program, such as variables, expressions, functions or modules.

New!!: C (programming language) and Type system · See more »


Unicode is a computing industry standard for the consistent encoding, representation, and handling of text expressed in most of the world's writing systems.

New!!: C (programming language) and Unicode · See more »

Unified Parallel C

Unified Parallel C (UPC) is an extension of the C programming language designed for high-performance computing on large-scale parallel machines, including those with a common global address space (SMP and NUMA) and those with distributed memory (e.g. clusters).

New!!: C (programming language) and Unified Parallel C · See more »

Union type

In computer science, a union is a value that may have any of several representations or formats within the same position in memory; or it is a data structure that consists of a variable that may hold such a value.

New!!: C (programming language) and Union type · See more »


Unix (trademarked as UNIX) is a family of multitasking, multiuser computer operating systems that derive from the original AT&T Unix, development starting in the 1970s at the Bell Labs research center by Ken Thompson, Dennis Ritchie, and others.

New!!: C (programming language) and Unix · See more »


A Unix-like (sometimes referred to as UN*X or *nix) operating system is one that behaves in a manner similar to a Unix system, while not necessarily conforming to or being certified to any version of the Single UNIX Specification.

New!!: C (programming language) and Unix-like · See more »

User (computing)

A user is a person who utilizes a computer or network service.

New!!: C (programming language) and User (computing) · See more »

Vala (programming language)

Vala is an object-oriented programming language with a self-hosting compiler that generates C code and uses the GObject system.

New!!: C (programming language) and Vala (programming language) · See more »


Valgrind is a programming tool for memory debugging, memory leak detection, and profiling.

New!!: C (programming language) and Valgrind · See more »

Value (computer science)

In computer science, a value is the representation of some entity that can be manipulated by a program.

New!!: C (programming language) and Value (computer science) · See more »

Variable-length array

In computer programming, a variable-length array (VLA), also called variable-sized, runtime-sized, is an array data structure whose length is determined at run time (instead of at compile time).

New!!: C (programming language) and Variable-length array · See more »

Variadic macro

A variadic macro is a feature of some computer programming languages, especially the C preprocessor, whereby a macro may be declared to accept a varying number of arguments.

New!!: C (programming language) and Variadic macro · See more »


Verilog, standardized as IEEE 1364, is a hardware description language (HDL) used to model electronic systems.

New!!: C (programming language) and Verilog · See more »

Void type

The Void type, in several programming languages derived from C and Algol68, is the type for the result of a function that returns normally, but does not provide a result value to its caller.

New!!: C (programming language) and Void type · See more »

Volatile (computer programming)

In computer programming, particularly in the C, C++, C#, and Java programming languages, the volatile keyword indicates that a value may change between different accesses, even if it does not appear to be modified.

New!!: C (programming language) and Volatile (computer programming) · See more »

W. W. Norton & Company


New!!: C (programming language) and W. W. Norton & Company · See more »

Watcom C/C++

Watcom C/C++ (currently Open Watcom C/C++) is an integrated development environment (IDE) product from Watcom International Corporation for the C, C++, and Fortran programming languages.

New!!: C (programming language) and Watcom C/C++ · See more »

While loop

In most computer programming languages, a while loop is a control flow statement that allows code to be executed repeatedly based on a given Boolean condition.

New!!: C (programming language) and While loop · See more »

Whitespace character

In computer programming, white space is any character or series of characters that represent horizontal or vertical space in typography.

New!!: C (programming language) and Whitespace character · See more »

Wolfram Mathematica

Wolfram Mathematica (usually termed Mathematica) is a modern technical computing system spanning most areas of technical computing — including neural networks, machine learning, image processing, geometry, data science, visualizations, and others.

New!!: C (programming language) and Wolfram Mathematica · See more »

Working group

A working group or working party is a group of experts working together to achieve specified goals.

New!!: C (programming language) and Working group · See more »

Redirects here:

.c, 32/16 bit C programming, C (Programming Language), C (computer language), C (lang), C (language), C (programming langage), C (programming langauge), C (programming language, C (programming), C (software), C Language, C Programming, C Programming Language, C lang, C language, C prog, C program, C programing language, C programming, C programming Language, C programming language, C programming language, criticism, C programming language/Evolution, C programming language/K and R C, C(programming language, C(programming language), C-programming, Computer language C, Criticism of C, Criticism of C (programming language), Criticism of the C programming language, K and R C, K and r c, K&R C, Programming language C.


[1] https://en.wikipedia.org/wiki/C_(programming_language)

Hey! We are on Facebook now! »