Partage
  • Partager sur Facebook
  • Partager sur Twitter

Règles de ce forum, à lire avant de poster

5 février 2014 à 20:39:36

Cette section est destinée à recueillir vos questions concernant le langage de programmation C.

Son utilisation est soumise aux règles générales du forum.

Merci de les lire et de les appliquer.

Par ailleurs, ce sujet regroupe les règles spécifiques à cette section, ainsi qu'un certain nombre d'informations utiles.

Ce forum est destiné à l'entraide concernant la programmation en langage C, et les technologies qui l'entourent (comme la SDL).

Il existe un forum de C++ pour les discussions sur le C++.

Les discussions d'algorithmique ou de programmation en général doivent se faire dans le forum autres langages.

Les questions concernant la programmation de bots type programmes qui jouent automatiquement à un jeu pour vous, virus, chevaux de troie, keyloggers, keygens ou autres cracks ne sont pas les bienvenues, même lorsque c'est légal.

Toute discussion hors-sujet sera fermée.

Informations utiles

La suite de ce sujet présente diverses informations en rapport avec le langage C. N'hésitez pas à la lire, un début de réponse à votre question s'y trouve peut-être !

-
Edité par Benzouye 25 mai 2018 à 16:19:48

  • Partager sur Facebook
  • Partager sur Twitter
5 février 2014 à 20:40:38

Normes et manuels de référence

Dans un premier temps, voyons les documents de référence (en anglais). Ces documents décrivent ce qu'est le langage C. Le C89, C99 et C11 représentent des versions différentes du langage C.

Divers cours de C

Si le cours du site vous semble peu clair sur certains point, vous pouvez essayer d'aller lire un autre cours. Il existe de nombreux cours de C gratuits en ligne ; en voici une petite sélection (non-exhaustive).

Divers livres (papier) de C

Quelques grands ouvrages :

  • Le langage C norme ANSI (de Brian W. Kernighan et Dennis M. Ritchie), par les concepteurs du langage. On ne le présente plus. Aussi nommé “K&R”.
  • Apprenez à programmer en C (de Mathieu Nebra), le livre des zéros.
  • Méthodologie de la programmation en C (de Achille Braquelaire), une excellent présentation du C et plus précisément de la norme C99.
  • Programmer en langage C (de Claude Delannoy), une initiation au C.
  • C en action (de Yves Mettier), cet ouvrage est construit sur le modèle : un problème, une solution, une discussion; réservé aux initiés.
  • Algorithmes en langage C : Cours et exercices (de Robert Sedgewick), présente un ensemble assez complet d'algorithmes, écrits en C.
  • Développement système sous Linux (de Christophe Blaess), présente l'interaction avec le système (sous Linux) : gestion mémoire, programmation réseau…
  • C Unleashed (de Richard Heathfield, Lawrence Kirby et Ian Woods), en anglais : présentation de nombreux concepts et techniques avancées. À réserver aux experts.

Des exercices

Voici quelques sites proposant des exercices s'entraîner et progresser :

  • Exercices pour débutants en C, des exercices proposés par la communauté d'OC.
  • France IOI : plus de 500 exercices répartis par niveau de difficulté croissante, avec des corrections détaillées.
  • Prologin : des exercices relativement simples dans l'ensemble, certains représentant tout de même un défi intéressant.
  • La plate-forme d'entraînement des USACO : des exercices dont la difficulté ne constitue pas tant de trouver un algorithme que de savoir le programmer.
  • Projet Euler : des problèmes mêlant mathématiques et algorithmique, pour lesquels une réflexion sur les deux domaines est indispensable.
  • Sphere Online Judge : une immense banque de problèmes en tous genres, de niveaux très variés.
  • UVa Online Judge : près de 30 000 problèmes, dont certain d'un niveau avancé (archives du SWERC des finales ACM-ICPC).
  • Exercices_en_langage_C : un wikilivre d'exercices.

En outre, n'hésitez pas à aller voir les exercices proposés dans d'autres langages, la plupart sont très simplement transposables en C.

Des FAQs

FAQ signifie en français Foire Aux Questions. Il s'agit de listes de questions fréquemment posées sur les forums, avec leurs réponses. Elles permettent de gagner beaucoup de temps en évitant de répondre à la même question vingt fois par jour.

Trouver du code à lire

Pour apprendre à programmer, il faut 1) écrire du code, 2) lire du code. Ce deuxième point est souvent négligé, même par d'excellents programmeurs. N'hésitez pas à télécharger les sources de votre logiciel libre préféré, et à essayer de les lire. Voici quelques sites proposant des sources en libre accès (tous langages confondus).

Conclusion

Toutes ces ressources devraient déjà te tenir occupé(e) un bon moment ! Si par la suite, tu n'as plus d'idées de choses à faire en C, tu pourras toujours te lancer dans l'apprentissage des systèmes d'exploitation, de l'algorithmique, de la programmation en réseau, et bien d'autres encore ! :)

Bon apprentissage, amuse-toi bien.

Paraze, GuilOooo et tous les contributeurs de ce post-it.

  • Partager sur Facebook
  • Partager sur Twitter