Les 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). En outre, la bibliothèque standard du C fournit des types supplémentaires qui permettent de s'abstraire des types liés aux caractéristiques techniques de l'ordinateur cible. Le langage C fournit quatre spécificateurs arithmétiques de base char, int, float et double ainsi que leurs versions modifiés signed, unsigned, short et long. Le tableau suivant liste les combinaisons et la plage de valeurs permises pour chaque déclaration. C99 (anglais) a ajouté le type booléen _Bool (vrai / faux). De plus, l'en-tête définit bool comme un alias pratique pour ce type et fournit également des macros pour true et false . _Bool fonctionne de manière similaire à un type entier normal, à une exception près : toutes les affectations à _Bool qui ne sont pas 0 (faux) sont stockées comme 1 (vrai). Ce comportement existe pour éviter les dépassements d'entier dans les conversions de rétrécissement implicites. Par exemple, dans le code suivant : unsigned char b = 256; if (b) { /* faire quelque chose */ } La variable b contient false (faux, ou 0) si le caractère unsigned char a une taille de 8 bits. Cela est dû au fait que la valeur 256 ne correspond pas au type de données, ce qui entraîne l'utilisation des 8 bits inférieurs, donc la valeur est nulle.

À propos de ce résultat
Cette page est générée automatiquement et peut contenir des informations qui ne sont pas correctes, complètes, à jour ou pertinentes par rapport à votre recherche. Il en va de même pour toutes les autres pages de ce site. Veillez à vérifier les informations auprès des sources officielles de l'EPFL.
Cours associés (32)
CS-119(c): Information, Computation, Communication
L'objectif de ce cours est d'introduire les étudiants à la pensée algorithmique, de les familiariser avec les fondamentaux de l'Informatique et de développer une première compétence en programmation (
ME-213: Programmation pour ingénieur
Mettre en pratique les bases de la programmation vues au semestre précédent. Développer un logiciel structuré. Méthode de debug d'un logiciel. Introduction à la programmation scientifique. Introductio
CS-119(a): Information, Computation, Communication
D'une part, le cours aborde: (1) la notion d'algorithme et de représentation de l'information, (2) l'échantillonnage d'un signal et la compression de données et (3) des aspects liés aux systèmes: ordi
Afficher plus
Séances de cours associées (128)
Espaces d' Interpolation
Explore les espaces d'interpolation dans les espaces de Banach, en mettant l'accent sur de véritables espaces d'interpolation continue et la méthode K.
Analyse complexe : Série Laurent
Explore la série Laurent en analyse complexe, mettant l'accent sur les singularités, les résidus et le théorème de Cauchy.
Introduction à la programmation C
Couvre les bases de la programmation C, y compris la syntaxe, les types de données, les pointeurs, les tableaux et les commandes de compilation.
Afficher plus
Publications associées (17)

Combinatory Array Logic with Sums

Rodrigo Raya

We prove an NP upper bound on a theory of integer-indexed integer-valued arrays that extends combi- natory array logic with an ordering relation on the index set and the ability to express sums of elements. We compare our fragment with seven other fragment ...
2023

A decomposition of multicorrelation sequences for commuting transformations along primes

Florian Karl Richter

A decomposition of multicorrelation sequences for commuting transformations along primes, Discrete Analysis 2021:4, 27 pp. Szemerédi's theorem asserts that for every positive integer kk and every δ>0\delta>0 there exists nn such that every subset of ${1, ...
2021

Minimal graphs for 2-factor extension

Dominique de Werra

Let G = (V, E) be a simple loopless finite undirected graph. We say that G is (2-factor) expandable if for any non-edge uv, G + uv has a 2-factor F that contains uv. We are interested in the following: Given a positive integer n = vertical bar V vertical b ...
ELSEVIER2020
Afficher plus
Concepts associés (23)
Variable (informatique)
En informatique, les variables sont des symboles qui associent un nom (l'identifiant) à une valeur. Dans la plupart des langages et notamment les plus courants, les variables peuvent changer de valeur au cours du temps (dynamique). Dans les langages de certains paradigmes, notamment la programmation fonctionnelle, leur valeur est au contraire figée dans le temps (statique). Contrairement à une variable, une constante est un identificateur associé à une valeur fixe. Syntaxiquement, cet identificateur a tous les aspects d'une variable.
Const
En 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.
IEEE 754
En informatique, l’IEEE 754 est une norme sur l'arithmétique à virgule flottante mise au point par le Institute of Electrical and Electronics Engineers. Elle est la norme la plus employée actuellement pour le calcul des nombres à virgule flottante avec les CPU et les FPU. La norme définit les formats de représentation des nombres à virgule flottante (signe, mantisse, exposant, nombres dénormalisés) et valeurs spéciales (infinis et NaN), en même temps qu’un ensemble d’opérations sur les nombres flottants.
Afficher plus
MOOCs associés (2)
Initiation à la Programmation en C++
Ce cours initie à la programmation en utilisant le langage C++. Il ne présuppose pas de connaissance préalable. Les aspects plus avancés (programmation orientée objet) sont donnés dans un cours suivan
Initiation à la Programmation en Java
Ce cours initie à la programmation en utilisant le langage Java. Il ne présuppose pas de connaissance préalable. Les aspects plus avancés (programmation orientée objet) sont donnés dans un cours suiva

Graph Chatbot

Chattez avec Graph Search

Posez n’importe quelle question sur les cours, conférences, exercices, recherches, actualités, etc. de l’EPFL ou essayez les exemples de questions ci-dessous.

AVERTISSEMENT : Le chatbot Graph n'est pas programmé pour fournir des réponses explicites ou catégoriques à vos questions. Il transforme plutôt vos questions en demandes API qui sont distribuées aux différents services informatiques officiellement administrés par l'EPFL. Son but est uniquement de collecter et de recommander des références pertinentes à des contenus que vous pouvez explorer pour vous aider à répondre à vos questions.