On Fri, 2005-09-30 at 00:30, Marc Mongenet wrote:
> 2005/9/28, JM Nunes <[EMAIL PROTECTED]>:
> > L'occasion d'apporter mes 2 centimes :-)
> >
> > *************** en C ****************
> > main () {
> > char* x = "123";
> >    printf ("x=%i"; x);
> > }
> > ************
> 
> La fonction printf a le prototype suivant :
> int printf(const char *, ...);
> L'usage des "..." sert justement à faire sauter la vérification du type
> et du nombre de paramètres passés.
> 
> Printf me semble donc plutôt démontrer le fort typage de C,
> puisqu'il faut avoir recourt à un mécanisme certes fort utilisé
> (avec printf, sprintf, fprintf) mais finalement exotique et très
> peu connu (qui a déjà écrit une fonction C à liste de paramètres
> variable ?)

Moi!

:-)

ciao, Leo

> En fait, C est né avec un typage faible : avant l'invention des
> prototypes il n'était pas possible de vérifier le type ni le nombre des
> paramètres ! La conversion pointeur-entier se faisait aussi sans
> avertissement. Mais C est devenu un langage fortement typé. Les
> conversions int - short - long ne représentent plus guère un
> problème que pour les académiciens et les rares programmes qui
> ont des raisons légitimes d'utiliser des unsigned et autre types
> de bas niveau.
> 
> Si C était né avec toutes les vérifications de types que chacun utilise
> aujourd'hui, tous le monde citerait C comme exemple de langage
> fortement typé avec simplement quelques (dangeureux mais pour la
> plupart évitables) archaïsmes. Je soupçonne d'ailleurs 90% de la
> critique actuel de C de n'être que des échos de la critique, en ce
> temps fondée, des années1970.
> 
> Marc Mongenet
> _______________________________________________
> gull mailing list
> [email protected]
> http://lists.alphanet.ch/mailman/listinfo/gull
> 
> 

Attachment: signature.asc
Description: This is a digitally signed message part

_______________________________________________
gull mailing list
[email protected]
http://lists.alphanet.ch/mailman/listinfo/gull

Répondre à