Lien Proposition pour ajouter defer en C
Lien la manière la plus efficace de déterminer si un nombre est pair
Journal Perles de C
Demat'iNal,
La ligne suivante est valide en ANSI C, sauras-tu l'analyser mentalement et en décrire les effets ?
int a, * const b, (*(c(void)))[10], *d[2] = {&a};
Lien Patching GCC to build Actually Portable Executables
Lien Un an de C (lien vieux de 5 ans, mais avec de vrais exemples encore valables aujourd'hui)
Journal Les codes fantastiques (et où les trouver)
Demat' iNal,
Depuis fin 2022, j'anime une petite rubrique dans GNU/Linux Magazine, intitulée les codes fantastiques, où est décrit en une page une petite aventure informatique, un bout de code qui m'a amusé / plus / interpelé. [0]
Comme c'est les 25 ans de LinuxFR, et que j'en écris plus que ce qu'ils peuvent publier (trois d'avance pour le moment !), voici une sorte de ?hors série? que je ne publierai pas là bas du coup.
Les codes fantastiques
(…)Journal Aujourd'hui on ne parle pas de k-pop, mais de JSON !
ATTENTION, sous ses faux airs d’impartialité, ce journal est une pub éhontée pour mon projet json-search
Bonjour, il y a quelques temps, j'ai posté ce lien
dans lequel on m'a demandé "pourquoi ne pas écrire un journal ?"
Au lieu de ne parler que de mon projet, je pop donc une comparaison de plusieurs outils pour chercher des éléments dans un fichier JSON.
(C'est donc de la j-pop)
J'ai pris ce fichier (un peu impartialement) car je voulais un fichier (…)
Lien petit outils que j'ai fait, pour chercher des choses dans des json
Journal SIGUSR1, SIGUSR2,..., SIGUSR_N ?
Demati'Nal,
À la lecture de signal(7)
, on se rend compte que deux signaux sont réservés pour les signaux utilisateurs SIGUSR1
et SIGUSR2
. Deux, c'est peu. Je vous propose donc cette technique qu'on baptisera le signal knocking par analogie au Port_knocking
#include <signal.h>
#include <unistd.h>
#include <stdlib.h>
#include <stdio.h>
int signalvalue = 0;
void sigusr1handler(int signum);
void sigusr2handler(int signum);
void sigusr1handler(int signum) {
++signalvalue;
}
void sigusr2handler
(…)
Forum Programmation.c C : gestion du répertoire de travail
Bonjour à tous,
Je recherche le moyen le plus simple (au sens "moins de lignes de code") de récupérer le répertoire de travail d'un programme.
Supposons que le programme ait besoin d'ouvrir un fichier data.txt situé dans le même répertoire que l'exécutable. Le plus simple est d'écrire :
f=fopen("data.txt","r");
Mais si j'appelle le programme d'un autre emplacement que celui de l'exécutable, ça ne marche pas. Il faut donc récupérer le répertoire de travail.
Voici les deux méthodes les plus simples (…)
Forum général.cherche-logiciel Analyseur statique de code C
Bonjour,
J'ai jamais trop utilisé d'analyseur de code dans ma carrière, donc je ne sais même pas si ce que je demande existe en fait !
Pourriez-vous me conseiller un (ou plusieurs) LL qui me permette de :
- faire des stats de base sur le code (nb et taille des fonctions par exemple)
- faire un graphe d'appel des fonctions
- sortir une doc du code si on met des commentaires sous un format spécifique
- analyser les erreurs (…)
Lien Petite introduction à WebAssembly
Lien uwuify en C. (petit projet que j'ai fait dans le train pour noël)
Nouveautés du langage C dans sa prochaine version C23
Le C est un langage de programmation développé depuis 1972 par Kenneth Thompson, Brian Kernighan et Dennis Ritchie. Il est, au départ, étroitement lié au développement du système UNIX, mais il a par la suite trouvé de nombreuses autres utilisations.
Il a influencé le développement de plusieurs autres langages dont C++, Objective-C, Java, D et C#.
La version C23, qui sera vraisemblablement finalisée en 2023, apporte son lot de nouveautés.
Après un bref historique de la normalisation du langage, cet article parcourt les principaux changements présents dans cette nouvelle version.