Hello!

Inspiré(e) de prendre part à la discussion ? Ou de poser une question ou demander de l’aide ?

Alors bienvenues dans les grands sujets des forums de La Bulle : m’inscrire.

Cette partie du forum n’est pas compatible avec les bloqueurs publicitaires

Félicitations à vous, de préférer les accès payants plutôt que la gratuité par la publicité, c’est honnorable et cohérent de votre part. Malheureusement, l’accès payant par micropaiement (qui serait d’environ 1 cent pour 20 pages consultées) n’est pour l’instant pas encore mis en place, et l’accès gratuit sans publicité, est réservé aux membres actif(ve)s du forum. En attendant, si vous souhaitez poursuivre votre visite chez nous, vous pouvez ajouter le site à votre liste blanche, ou encore mieux, désactiver le bloqueur partout. Pour ajouter le site à votre liste blanche, pour Firefox (similaire pour les autres navigateurs), rendez‑vous en bas à gauche de la fenêtre de votre navigateur, et cliquez sur le menu comme dans l’exemple de l’image ci‑dessous, puis rechargez la page, en appuyant sur F5.

Les standards du C (le langage, ISO/IEC 9899)
Auteur Message
Administrateur
Avatar de l’utilisateur
  • Genre : Télétubbie
  • Messages : 16764
Ven 26 Sep 2014 03:08
Message Les standards du C (le langage, ISO/IEC 9899)
Le C est un langage défini par une norme ISO. Les normes ISO sont assez chers (du moins pour les particuliers), aux environs de 164 € (198 CHF).

Il existe d’autres sources, certaines identiques et nettement moins chers, d’autres non‑payantes mais moyennement fiables.

Il existe des formalisations du C ou de sous‑ensembles du C, dont certaines sont en cours.

Le standard est « millésimé » : ISO/IEC 9899:1999 n’est pas ISO/IEC 9899:2011. Le site de l’ISO ne propose toujours que la dernière version.

Brouillons du standard


Sources et liste de sources pour des brouillons de la norme ou des commentaires sur celle‑ci, non‑payants, mais non‑fiables. À ne pas utiliser pour concevoir des outils devant interpréter ou non‑trivialement manipuler des sources C ! (excepté pour un usage privé qui n’engage que soi)


Standards officiels chez d’autres éditeurs


Éditeurs proposant la norme, comme texte identique à celui de l’ISO, pour bien moins cher. Ces sources sont fiables, modulo le « millésime » sur lequel il ne faut pas se tromper et choisir en connaissance.


Formalisation de la sémantique


Les formalisations, ne sont pas des standards officiels, mais formalisent mathématiquement un sous‑ensemble.


Anciens standards


Plus en arrière dans le temps, des brouillons des précédentes version du C. À noter que beaucoup d’implémentation ne supporte finalement que d’ancienne version du C, et que les anciennes versions du standards sont donc toujours d’actualité. Comme elle ne sont plus publiées par l’ISO, il n’existe pas d’autres sources que ces brouillons. Malgré que les mêmes mise en garde que précédemment s’applique, elles sont à peser différemment.


Autres standards en rapport



À propos de POSIX (les références à OpenGroup plus haut), voir : UNIX, POSIX et SUS : références et à‑propos.

Image
Hibou57

« La perversion de la cité commence par la fraude des mots » [Platon]
Profil Site Internet
Administrateur
Avatar de l’utilisateur
  • Genre : Télétubbie
  • Messages : 16764
Mer 17 Déc 2014 12:15
Message Re: Les standards du C (le langage, ISO/IEC 9899)
Pour les curieux(ses), il existe encore un descendant directe d’un des tout premiers compilateurs C, de la fin des années 1970, nommé PCC, pour Portable C Compiler, actuellement propriété de la société Caldera International : PCC (pcc.ludd.ltu.se). Ne pas oublier de bien lire les licences : pcc / licenses.

Je n’ai pas vérifié sa conformité ou pas au standard du C actuel ou à une version précédente du standard.

Image
Hibou57

« La perversion de la cité commence par la fraude des mots » [Platon]
Profil Site Internet
Administrateur
Avatar de l’utilisateur
  • Genre : Télétubbie
  • Messages : 16764
Sam 25 Avr 2015 03:00
Message Re: Les standards du C (le langage, ISO/IEC 9899)
Comme le standard du C a des lacunes sémantiques, un ajout au sujet : Defining the Undefinedness of C (illinois.edu).

C’est un PDF daté de 2012 et qui ne fait pas partie du standard.

Image
Hibou57

« La perversion de la cité commence par la fraude des mots » [Platon]
Profil Site Internet
Administrateur
Avatar de l’utilisateur
  • Genre : Télétubbie
  • Messages : 16764
Dim 17 Jan 2016 08:36
Message Re: Les standards du C (le langage, ISO/IEC 9899)
Pas un standard, mais une série de recommandations, avec le pour et le contre quand la recommandation est discutable. Dans l’ensemble, le document invite à ne pas garder des habitudes de la préhistoire, souligne qu’on est en 2016 et que le C99 existe donc depuis dix‑sept ans, soit presque vingt.

How to C in 2016 (matt.sh)

Je suis d’accord avec tout, excepté la partie intutlée “Parameter Types” qui conseil de substituer un pointeur non‑typé à un pointeur typé Oops, n’a fait une bêtise .

Image
Hibou57

« La perversion de la cité commence par la fraude des mots » [Platon]
Profil Site Internet
Administrateur
Avatar de l’utilisateur
  • Genre : Télétubbie
  • Messages : 16764
Sam 2 Sep 2017 01:07
Message Re: Les standards du C (le langage, ISO/IEC 9899)
Un document du W3C sur la classique technique de reformuler en C, certaines des constructions basiques mais très courantes du C++ (faire du C++ en C) : C++ in C (w3.org).

Image
Hibou57

« La perversion de la cité commence par la fraude des mots » [Platon]
Profil Site Internet
Administrateur
Avatar de l’utilisateur
  • Genre : Télétubbie
  • Messages : 16764
Ven 19 Oct 2018 20:37
Message Re: Les standards du C (le langage, ISO/IEC 9899)
Pas une partie du standard du C, mais fortement lié, une partie de POSIX a propos de la configuration des sources C, les macros qui permettent de tester quel version de POSIX fourni l’environnement dans lequel un source C est compilé : The compilation environment (opengroup.org).

Depuis l’index avec les iframes (*), vous pouvez retrouver cette page dans la section “ System Interfaces ”.


(*) POSIX.1-2017 (opengroup.org), dont le lien est aussi donné dans le sujet UNIX, POSIX et SUS : références et à‑propos.

Image
Hibou57

« La perversion de la cité commence par la fraude des mots » [Platon]
Profil Site Internet
Administrateur
Avatar de l’utilisateur
  • Genre : Télétubbie
  • Messages : 16764
Ven 8 Mar 2019 08:45
Message Re: Les standards du C (le langage, ISO/IEC 9899)
Ce n’est pas un standard du C, mais une librairie pour les coroutines en C, une construction importante et inévitable dans certains cas épineux : libaco (github.com/hnes). Ce n’est pas la seule librairie du genre, je la mentionne parce qu’elle me semble (subjectif) la mieux conçue des quelques unes existantes.

Les coroutines sont une technique d’inversion de contrôle, dont des cas particuliers sont les générateurs. Elles sont fréquemment et à juste titre, comparées à des threads légers ou à des cas particuliers de continuations.

Comme elle permet d’implémenter les coroutines asymétriques, la librairie mentionnée plus haut est en fait plus pour implémenter des générateurs que des coroutines au sens général.

Image
Hibou57

« La perversion de la cité commence par la fraude des mots » [Platon]
Profil Site Internet
cron