Je ne dis pas ça parce que je n'aime pas le C. Je programme presque exclusivement en C++, mais c'est justement cette expérience-là qui me fait dire : aucun programme écrit en C n'est robuste ou sécurisé. Il y a trop de failles intrinsèques au langage lui-même.
Et pourtant y a des logiciels en C qui ne sont pas codé avec les pieds qui on tres peu de faille : par exemple http://vsftpd.beasts.org/
n'utilise aucun pointeur C. Elimine les * partout où c'est possible.
Tu passes comment les parametres dans tes fonctions ?
En copiant tout sur la stack ?
Et les valeurs de retour, en utilisant des variables globales ?
* ne gère jamais la mémoire toi-même.
* bannis toutes les fonctions d'entrée/sortie standards du C (genre printf)
* n'utilise jamais de tableaux en C.
T'as des exemples de code C avec tes regles ?
Je serais curieux de voir ce que ca donne :)
(Il est bien entendu qu'il est hors de question d'utiliser des libs qui ne respectent pas ses regles, et que tu as donc recoder ta libc...)
[^] # Re: Change de langage
Posté par M . En réponse au journal Programmation robuste. Évalué à 6.
Et pourtant y a des logiciels en C qui ne sont pas codé avec les pieds qui on tres peu de faille : par exemple http://vsftpd.beasts.org/
n'utilise aucun pointeur C. Elimine les * partout où c'est possible.
Tu passes comment les parametres dans tes fonctions ?
En copiant tout sur la stack ?
Et les valeurs de retour, en utilisant des variables globales ?
* ne gère jamais la mémoire toi-même.
* bannis toutes les fonctions d'entrée/sortie standards du C (genre printf)
* n'utilise jamais de tableaux en C.
T'as des exemples de code C avec tes regles ?
Je serais curieux de voir ce que ca donne :)
(Il est bien entendu qu'il est hors de question d'utiliser des libs qui ne respectent pas ses regles, et que tu as donc recoder ta libc...)