[Sequanux-ml] questions de programmation

Jonas ezjonas at gmail.com
Ven 7 Aou 14:45:33 CEST 2009


Euh bah en fait j'avais deja change mon code pour mettre des entiers
et faire un atoi sur une chaine de taille 1 pour en faire un atoi, ca
compile, et la j'ai remis les chars, et ca remarche, donc rien a voir
avec mon probleme j'avais surement codé salement, surtout que j'avais
l'erreur genre 2 fois a la suite pour une meme ligne... !
BREF !
C'est quoi le c99 ? la derniere norme avant que ce soit du c++ ?

2009/8/7 simon <simon at sequanux.org>:
> On Fri, Aug 07, 2009 at 10:46:57AM +0200, Jonas wrote:
>> Question num 1:
>>
>> J'ai recemment quelques soucis avec la structure de controle switch:
>> Je croyais qu'on pouvait utiliser des char pour les cases, de cette
>> facon:
>> char c = 'a';
>> switch(c)
>> {
>> case 'a': return 1;
>> case 'b': return 2;
>> case 'c': return 3;
>> }
>>
>> Mais j'ai une erreur de lvalue, et j'ai cherche rapidement sur le net,
>> et apparemment, c'est pas conforme.
>
> En C99, l'expression évaluée par un switch doit être entière. Le type
> char doit donc être valide. En tout cas, il ne pose pas de problème à
> gcc.
>
> Est-ce le code que tu présentes ici est bien celui qui génère l'erreur ?
> Si ce n'est pas le cas peux tu fournir la version orignale ?
> Peux tu également préciser le compilateur que tu utilises (ainsi que
> sa version) ?
>
>>
>> Je voulais aussi avoir un avis assez objectif sur le python compare au
>> c/c++ (mis a part le fait que le python est interprete), j'essaie
>> d'apprendre le ruby, mais le ruby est un language en constante
>> évolution alors que le python est plutôt rodé. Meme si le ruby est a
>> peu pres dans le meme esprit que le python, j'arrive pas trop a voir
>> la difference, et surtout voir ce que le ruby a en plus, mis a part le
>> concept du tout objet.
>>
>> La deuxieme question est un peu naive, mais je voulais surtout avoir
>> une reponse pour la premiere question.
>
> A mon avis, le choix du langage a utilisé dépend surtout du besoin. Si
> par exemple tu veux écrire un driver pour le noyau linux, tu ne le
> feras pas en python... de même que si tu dois travailler sur une GUI,
> tu n'auras pas envie d'utiliser un langage comme le C :)
>
> Simon
>
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.9 (GNU/Linux)
>
> iEYEARECAAYFAkp8IIIACgkQgtp0PDeOcDrseQCgjEPGQqL8EZDNu0E5+ESFt7ub
> 8NoAoISkPA5S1ONWxFTUnXvw3XPcBwo9
> =Nfbx
> -----END PGP SIGNATURE-----
>
>


Plus d'informations sur la liste de diffusion Sequanux-ml