From 4408715c654cb5e3ebba8fb781c006dae10967c0 Mon Sep 17 00:00:00 2001 From: ache Date: Mon, 26 Nov 2018 03:19:34 +0100 Subject: fix asterisk --- article/bizarrerie-du-langage-c.md | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/article/bizarrerie-du-langage-c.md b/article/bizarrerie-du-langage-c.md index 730c1e7..d4248e7 100644 --- a/article/bizarrerie-du-langage-c.md +++ b/article/bizarrerie-du-langage-c.md @@ -2,9 +2,7 @@ Les bizarreries du langage C ============================ ![The C Programming Language logo](res/c_language.svg) - Le C est un langage à la syntaxe simple. Les seules complexités de ce langage viennent du fait qu'il agit de manière proche de la machine. - Pourtant, une partie des syntaxes autorisées par le C n'est pratiquement jamais enseignée. Attaquons-nous à ces cas mystérieux ! 🧞 >!attention @@ -379,7 +377,7 @@ void foo( int n, int m, int tab[][m]) { } ``` -À noter qu'il est possible d'utiliser le caractère `\*` (encore une utilisation de plus) en lieu et place de la taille d'une ou plusieurs dimensions d'un VLA, mais *uniquement* au sein d'un prototype. +À noter qu'il est possible d'utiliser le caractère `*` (encore une utilisation de plus) en lieu et place de la taille d'une ou plusieurs dimensions d'un VLA, mais *uniquement* au sein d'un prototype. ```c void foo(int, int, int[][*]); @@ -408,7 +406,7 @@ printf("%zu", sizeof(a*2.)); // Affiche 8 printf("%zu", sizeof b++); // Affiche 8 ~~~ -Le premier résultat n'est pas très surprenant, la taille d'un `char` est défini à 1 *byte* et `sizeof(char)` doit retourner 1. Le deuxième résultat est la taille d'un `int`[^machine]. Le troisième résultat est la taille d'un `float`[^machine]. Le quatrième est la taille d'un `double`[^machine] qui est le type de l'expression `a\*2.`[^float]. Le dernier résultat est la taille d'un `size_t`[^machine], `size_t` étant le type de l'expression `b++`. +Le premier résultat n'est pas très surprenant, la taille d'un `char` est défini à 1 *byte* et `sizeof(char)` doit retourner 1. Le deuxième résultat est la taille d'un `int`[^machine]. Le troisième résultat est la taille d'un `float`[^machine]. Le quatrième est la taille d'un `double`[^machine] qui est le type de l'expression `a*2.`[^float]. Le dernier résultat est la taille d'un `size_t`[^machine], `size_t` étant le type de l'expression `b++`. Ici, je ne me suis pas intéressé à la valeur des expressions et pour cause, `sizeof` ne s'y intéresse pas non plus. Ces valeurs sont déterminées à la compilation. Les opérations que l'on retrouve dans l'expression passé à `sizeof` ne sont pas effectuées. Puisque l'expression doit être valide, son type doit être déterminé à la compilation. Le résultat de `sizeof` étant alors connu à la compilation, il n'y avait aucune raison d'exécuter l'expression. -- cgit v1.2.3-54-g00ecf From 028b6f4d83ea468712f503f5cc72be025c71a49f Mon Sep 17 00:00:00 2001 From: ache Date: Mon, 26 Nov 2018 03:19:49 +0100 Subject: Add support for grid table --- package.json | 1 + 1 file changed, 1 insertion(+) diff --git a/package.json b/package.json index 6e43d40..1fb0321 100644 --- a/package.json +++ b/package.json @@ -6,6 +6,7 @@ "rehype-raw": "^2.0.0", "rehype-stringify": "^3.0.0", "remark": "^8.0.0", + "remark-grid-tables": "^1.2.0", "remark-highlight.js": "^5.0.0", "remark-html": "^6.0.1", "remark-kbd": "^1.0.6", -- cgit v1.2.3-54-g00ecf