ConstEn programmation dans les langages C ou C++, const est un mot-clé permettant au programmeur de signaler au compilateur que l'élément ainsi qualifié ne doit pas être modifié pendant l'exécution du programme. Cet élément sera donc constant tout le long d'une exécution normale du programme. En tant que mot-clé réservé par spécification du langage, il ne peut être utilisé que pour son objectif, ce qui proscrit, par exemple, son usage en tant que nom de variable. Sa première introduction se situe dans la norme ANSI du langage C de 1989.
Digraphs and trigraphsIn computer programming, digraphs and trigraphs are sequences of two and three characters, respectively, that appear in source code and, according to a programming language's specification, should be treated as if they were single characters. Various reasons exist for using digraphs and trigraphs: keyboards may not have keys to cover the entire character set of the language, input of special characters may be difficult, text editors may reserve some characters for special use and so on.
Inline functionIn the C and C++ programming languages, an inline function is one qualified with the keyword inline; this serves two purposes: It serves as a compiler directive that suggests (but does not require) that the compiler substitute the body of the function inline by performing inline expansion, i.e. by inserting the function code at the address of each function call, thereby saving the overhead of a function call. In this respect it is analogous to the register storage class specifier, which similarly provides an optimization hint.
Typedeftypedef is a reserved keyword in the programming languages C, C++, and Objective-C. It is used to create an additional name (alias) for another data type, but does not create a new type, except in the obscure case of a qualified typedef of an array type where the typedef qualifiers are transferred to the array element type. As such, it is often used to simplify the syntax of declaring complex data structures consisting of struct and union types, although it is also commonly used to provide specific descriptive type names for integer data types of varying sizes.
Syntax (programming languages)In computer science, the syntax of a computer language is the rules that define the combinations of symbols that are considered to be correctly structured statements or expressions in that language. This applies both to programming languages, where the document represents source code, and to markup languages, where the document represents data. The syntax of a language defines its surface form. Text-based computer languages are based on sequences of characters, while visual programming languages are based on the spatial layout and connections between symbols (which may be textual or graphical).
Instruction conditionnelle (programmation)vignette|Diagramme de flux de Si En informatique, une instruction conditionnelle, (aussi appelé expression conditionnelle), est une fonction d'un langage de programmation, qui effectue différents calculs ou actions, en fonction de l'évaluation d'une condition booléenne, à savoir vraie ou fausse. Dans les langages de programmation impératifs, le terme « instruction conditionnelle » est souvent utilisé, alors qu'en programmation fonctionnelle, le terme « expression conditionnelle » est préféré, parce que ces termes ont tous une signification distincte.
Type énuméréEn programmation informatique, un type énuméré (appelé souvent énumération ou juste enum, parfois type énumératif ou liste énumérative) est un type de données qui consiste en un ensemble de valeurs constantes. Ces différentes valeurs représentent différents cas ; on les nomme énumérateurs. Lorsqu'une variable est de type énuméré, elle peut avoir comme valeur n'importe quel cas de ce type énuméré. Un exemple typique est la représentation de cartes à jouer ordinaires : la suite ("couleur") ainsi que la hauteur (nombre ou figure) de la carte peuvent être représentés par des énumérations.
Variable volatileIn computer programming, volatile means that a value is prone to change over time, outside the control of some code. Volatility has implications within function calling conventions, and also impacts how variables are stored, accessed and cached. 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. This keyword prevents an optimizing compiler from optimizing away subsequent reads or writes and thus incorrectly reusing a stale value or omitting writes.
Préprocesseur CLe préprocesseur C ou cpp assure une phase préliminaire de la traduction (compilation) des programmes informatiques écrits dans les langages de programmation C et C++. Comme préprocesseur, il permet principalement l'inclusion d'un segment de code source disponible dans un autre fichier (fichiers d'en-tête ou header), la substitution de chaînes de caractères (macro définition), ainsi que la compilation conditionnelle. Dans de nombreux cas, il s'agit d'un programme distinct du compilateur lui-même et appelé par celui-ci au début de la traduction.
Reserved wordIn a computer language, a reserved word (also known as a reserved identifier) is a word that cannot be used as an identifier, such as the name of a variable, function, or label – it is "reserved from use". This is a syntactic definition, and a reserved word may have no user-defined meaning. A closely related and often conflated notion is a keyword, which is a word with special meaning in a particular context. This is a semantic definition. By contrast, names in a standard library but not built into a language are not considered reserved words or keywords.
Types de donnée du langage CLes types de donnée du langage C définissent les caractéristiques de stockage et les opérations disponibles pour chaque valeur et chaque variable d'un code source en langage C. Les types fondamentaux du langage C sont conçus pour pouvoir correspondre aux types supportés par l'architecture de processeur cible. Le langage C possède une vingtaine de types fondamentaux pour représenter des nombres naturels, entiers et réels. Le langage offre une syntaxe pour construire des types d'adresse mémoire (pointeurs) vectoriels (tableaux) et composés (structures).
Type qualifierIn the C, C++, and D programming languages, a type qualifier is a keyword that is applied to a type, resulting in a qualified type. For example, const int is a qualified type representing a constant integer, while int is the corresponding unqualified type, simply an integer. In D these are known as type constructors, by analogy with constructors in object-oriented programming. Type qualifiers are a way of expressing additional information about a value through the type system, and ensuring correctness in the use of the data.
Boucle whilevignette|Boucle while En programmation, la boucle while, francisée en boucle tant que, est une structure de contrôle permettant d'exécuter un ensemble d'instructions de façon répétée sur la base d'une condition booléenne. La boucle while peut être considérée comme une répétition de l'instruction if. Une boucle while est constituée d’un bloc de code source et d’une condition. À l’exécution, la condition est d’abord évaluée, et si elle est vraie, le bloc de code source est évalué.
Commentaire (informatique)vignette|Exemple de code source Java avec coloration syntaxique : le code source est en bleu, les commentaires en rouge (commentaires en bloc) et en vert (commentaires en ligne). Les commentaires sont, en programmation informatique, des portions du code source ignorées par le compilateur ou l’interpréteur, car destinées en général à un lecteur humain et non censées influencer l’exécution du programme.
String literalA string literal or anonymous string is a literal for a string value in the source code of a computer program. Modern programming languages commonly use a quoted sequence of characters, formally "bracketed delimiters", as in x = "foo", where "foo" is a string literal with value foo. Methods such as escape sequences can be used to avoid the problem of delimiter collision (issues with brackets) and allow the delimiters to be embedded in a string. There are many alternate notations for specifying string literals especially in complicated cases.
Alignement en mémoireEn informatique, les contraintes d'alignement en mémoire limitent à certains multiples d'adresse mémoire, où certaines données et instructions machine peuvent être enregistrées. En outre, les optimisations d'alignement mémoire permettent d'influencer la vitesse d'exécution d'un programme uniquement en choisissant bien les adresses. Pour augmenter leurs performances, les processeurs sont souvent reliés à la mémoire vive par un bus de données plus large que la granularité de leur adressage : par exemple un processeur est capable d'adresser individuellement des octets (8 bits), relié à la mémoire par un bus de (32 bits).
Return statementIn computer programming, a return statement causes execution to leave the current subroutine and resume at the point in the code immediately after the instruction which called the subroutine, known as its return address. The return address is saved by the calling routine, today usually on the process's call stack or in a register. Return statements in many programming languages allow a function to specify a return value to be passed back to the code that called the function.
Printfprintf (pour l'anglais print formatted, soit « imprimer formaté ») est une commande Unix permettant de faire afficher une chaîne de caractères à l'écran. C'est aussi un nom de fonction du langage C, et de nombreux autres langages informatiques permettant d'afficher une ou plusieurs variables de façon formatée dans le flux de sortie. Manuel printf: En C, il est nécessaire d'inclure l'en-tête standard au début du code source du programme, car c'est lui qui permet de déclarer la fonction printf.
Bibliothèque standardvignette|Binario cropped Une bibliothèque standard pour un langage de programmation est une bibliothèque logicielle qui est utilisée dans toute implémentation de ce langage. Une bibliothèque standard peut inclure : Fonctions Macros Variables globales Classes Gabarits (templates) La plupart des bibliothèques standard incluent : des algorithmes (par exemple pour le tri) ; des structures de données (telles que les listes, les arbres et les tables de hachage) ; des routines d'entrées-sorties et d'appel système.
SizeofDans les langages de programmation C et C++, l'opérateur unaire sizeof donne la taille en bytes de son opérande. L'opérande peut être un spécificateur de type ou une expression. Les types primitifs tels que char, int ou void* (non exhaustif) ont une taille dépendante du système pour lequel le code est compilé, elle est généralement documentée pour chaque système. Les structures, quant à elles, contiennent souvent plusieurs champs de types différents, la taille totale dépend donc de l'alignement de ses champs ainsi que de son alignement total.