Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1026 Le 03/04/2013, à 15:41

grim7reaper

Re : /* Topic des codeurs [8] */

Titus007 a écrit :
grim7reaper a écrit :

Edit : aller hop, un lien vers celle 2011 (j’ai aussi là 2012 sous le coude, mais à priori pas de différence).

Tiens, il me semble que quand tu avais mis le lien vers le brouillon de la norme C, pour mon info, elle tenait en plus de 15 pages…

Oui, c’est sûr que la norme du C fait plus de 15 pages (bon ce n’est pas la norme du C++ non plus big_smile).
Là j’ai donné le lien vers la norme Epitech.
La norme C (enfin le dernier brouillon) elle est .

Dernière modification par grim7reaper (Le 03/04/2013, à 15:41)

Hors ligne

#1027 Le 03/04/2013, à 15:48

Titus007

Re : /* Topic des codeurs [8] */

En fait, mon propos était plutôt un petit euphémisme pour signaler que la norme Epitech avait sacrément synthétisé la norme C… tongue

(Dans mon idée, une école qui apprendrait à coder du C devrait logiquement reprendre les principales lignes directrices de la norme, au minimum.)


3% of people today would die if facebook was completely destroyed, 2.7% wouldn't. If you are one of the 0.03% that would be laughing, copy and paste this to your signature. If you are one of the 12% who would mourn the dead, don't. If you are among the 60% of people who don't have Internet, well... and if you don't care, do whatever the f... you want !

Hors ligne

#1028 Le 03/04/2013, à 15:59

Elzen

Re : /* Topic des codeurs [8] */

Pour le « pas considéré comme un mot-clef », je pense que c'est pour répondre à la remarque précédente qui dit qu'il doit forcément y avoir une espace (ils ont mis espace au masculin, d'ailleurs, ces noobs) entre un mot-clef et la parenthèse qui suit ; ç'juste une façon super maladroite de dire qu'ils veulent qu'on écrive « sizeof(machin) » plutôt que « sizeof (machin) ».

Mais bon, pour un truc qui se prétend pédagogique, dire ça comme ça, ça fait peur… et le reste de ce torchon (je pèse mes mots. Et je suis très méchant envers les torchons, là) ne vaut pas mieux.

Hors ligne

#1029 Le 03/04/2013, à 16:07

grim7reaper

Re : /* Topic des codeurs [8] */

Bon, faut quand même être honnête et reconnaître qu’ils se sont améliorés.
Dans l’ancienne, il y a quand même des perles du genre :

L’ancienne norme a écrit :

[…]
On évitera aussi d'avoir plus de 5 fonctions par fichier, une serait l'idéal.
[…]
Il faut mettre le moins de fonctions possible par fichier (idéalement une seule fonction par fichier .c)
[…]

Bah voyons roll
Une fonction par fichier (idéalement, oui j’ai lu que ce n’est pas obligatoire mais c’est quand même recommandé), allons y gaiement…

L’ancienne norme a écrit :

[…]
(La fonction qui possédera au maximum 4 paramètres aura une vitesse exécution plus rapide que celle qui en passera plus).
[…]

Vous reprendrez bien d’un peu de vérité générale qui est en fait tout sauf générale (dépendant de l’architecture).
Et puis franchement, même sur les archi’ où cela est vrai, à moins que ta fonction prenne 147 paramètres (oui, ça sent le vécu tongue) je suis quasi sûr que le temps passé à dépiler les arguments est négligeable dans 98,42% des cas.

[…]
Certaines fonctions de la bibliothèque C peuvent retourner une valeur particulière lorsqu'elles échouent. Le code principal ne doit pas être pollué par le traitement de ces valeurs exceptionnelles, aussi faut-il introduire des versions de ces fonctions qui traitent les erreurs elles-mêmes par un appel à exit.
[…]

Je ne sais pas pour vous, mais pour moi quitter le programme comme un gros bourrin à coup d’exit je n’appelle pas ça « traiter les erreurs ».
Parce que avec exit il n’y a pas de libération de la mémoire (entre autre).
Oui, je sais que les OS modernes (Linux, Mac, Windows et sûrement BSD) passe derrière pour nettoyer, mais c’est pas le rôle de l’OS (et tous ne le font pas) de nettoyer la merde que le boulet de développeur a laissé derrière lui.
Et à côté de ça, ils interdisent goto dont l’un des seuls usages propres c’est justement de faire du traitement d‘erreurs (local certes) sans polluer le code principal…
Logique où es tu ?


Au moins, la nouvelle version de leur norme ne contient plus ces choses-là.
Mais bon, c’est encore très loin d’être une bonne norme à suivre.

Dernière modification par grim7reaper (Le 03/04/2013, à 16:10)

Hors ligne

#1030 Le 03/04/2013, à 16:39

nathéo

Re : /* Topic des codeurs [8] */

Au moins j'apprends pas mal de choses intéressantes sur le C. tongue


C'est rarement par le sarcasme qu'on élève son âme.
Le jus de la vigne clarifie l'esprit et l'entendement.
De quoi souffres-tu ? De l'irréel intact dans le réel dévasté ?
La liberté n'est qu'un vain fantôme, quand une classe d'hommes peut affamer l'autre impunément. timezone[America/Bogota]

Hors ligne

#1031 Le 03/04/2013, à 17:48

sweetly

Re : /* Topic des codeurs [8] */

nathéo a écrit :

Au moins j'apprends pas mal de choses intéressantes sur le C. tongue

C'est dommage que tu n'aies pas payé 7500€ pour ça.

Hors ligne

#1032 Le 03/04/2013, à 17:56

nathéo

Re : /* Topic des codeurs [8] */

Franchement, j'en ai un peu marre de ce genre de commentaire.


C'est rarement par le sarcasme qu'on élève son âme.
Le jus de la vigne clarifie l'esprit et l'entendement.
De quoi souffres-tu ? De l'irréel intact dans le réel dévasté ?
La liberté n'est qu'un vain fantôme, quand une classe d'hommes peut affamer l'autre impunément. timezone[America/Bogota]

Hors ligne

#1033 Le 03/04/2013, à 18:03

Shanx

Re : /* Topic des codeurs [8] */

Ne t’inquiète pas… big_smile


Mes randos : grande traversées des Alpes, de l'Islande, de la Corse, du Japon (en vélo), etc.
Traversée des États-Unis à pied

Hors ligne

#1034 Le 03/04/2013, à 18:29

The Uploader

Re : /* Topic des codeurs [8] */

grim7reaper a écrit :

Oui, je sais que les OS modernes (Linux, Mac, Windows et sûrement BSD) passe derrière pour nettoyer, mais c’est pas le rôle de l’OS (et tous ne le font pas) de nettoyer la merde que le boulet de développeur a laissé derrière lui.

Pas sûr que un OS sans protection mémoire (AmigaOS 3.X, Windows 9X, ...) l'OS fasse ce genre de nettoyage, par exemple.

grim7reaper a écrit :

Et à côté de ça, ils interdisent goto dont l’un des seuls usages propres c’est justement de faire du traitement d‘erreurs (local certes) sans polluer le code principal…
Logique où es tu ?

Pas là

grim7reaper a écrit :

Au moins, la nouvelle version de leur norme ne contient plus ces choses-là.
Mais bon, c’est encore très loin d’être une bonne norme à suivre.

Le seul usage normal de cette norme, c'est de l'imprimer pour se torcher avec.

nathéo a écrit :

Au moins j'apprends pas mal de choses intéressantes sur le C. tongue

Le C est passionnant, au contraire de l'Epic Fail Tech.


- Oldies PC : Intel Pentium 3 @ 800 Mhz sur CM ASUS P2B-F, GeForce 4 Ti4800 SE, Disque Dur Hitachi 160 Go, 512 Mo de RAM, 3DFX Voodoo 2, Sound Blaster 16 ISA PnP, Windows 98 SE / XP)
- Desktop : Intel Core i7 6700K @ 4 GHz sur CM ASUS Z170-P, GeForce GTX 1070, SSD Samsung 850 EVO 1 To, 16 Go de RAM, Disque Dur Seagate Barracuda 3 To, Windows 10

Hors ligne

#1035 Le 03/04/2013, à 22:18

Pylades

Re : /* Topic des codeurs [8] */

The Uploader a écrit :

size_of n'est pas un mot clé

sizeof, s’il te plaît, là ça pique les yeux. ><"


“Any if-statement is a goto. As are all structured loops.
“And sometimes structure is good. When it’s good, you should use it.
“And sometimes structure is _bad_, and gets into the way, and using a goto is just much clearer.”
                Linus Torvalds – 12 janvier 2003

Hors ligne

#1036 Le 03/04/2013, à 22:40

The Uploader

Re : /* Topic des codeurs [8] */

Oups! Corrigé. lol


- Oldies PC : Intel Pentium 3 @ 800 Mhz sur CM ASUS P2B-F, GeForce 4 Ti4800 SE, Disque Dur Hitachi 160 Go, 512 Mo de RAM, 3DFX Voodoo 2, Sound Blaster 16 ISA PnP, Windows 98 SE / XP)
- Desktop : Intel Core i7 6700K @ 4 GHz sur CM ASUS Z170-P, GeForce GTX 1070, SSD Samsung 850 EVO 1 To, 16 Go de RAM, Disque Dur Seagate Barracuda 3 To, Windows 10

Hors ligne

#1037 Le 03/04/2013, à 23:10

Shanx

Re : /* Topic des codeurs [8] */

nathéo a écrit :

Franchement, j'en ai un peu marre de ce genre de commentaire.

Voilà


Mes randos : grande traversées des Alpes, de l'Islande, de la Corse, du Japon (en vélo), etc.
Traversée des États-Unis à pied

Hors ligne

#1038 Le 03/04/2013, à 23:53

Pylades

Re : /* Topic des codeurs [8] */

Ah, évidemment. On n’a plus le droit de rien critiquer, aujourd’hui. neutral


“Any if-statement is a goto. As are all structured loops.
“And sometimes structure is good. When it’s good, you should use it.
“And sometimes structure is _bad_, and gets into the way, and using a goto is just much clearer.”
                Linus Torvalds – 12 janvier 2003

Hors ligne

#1039 Le 04/04/2013, à 00:17

:!pakman

Re : /* Topic des codeurs [8] */

Shanx a écrit :
nathéo a écrit :

Franchement, j'en ai un peu marre de ce genre de commentaire.

Voilà

Incroyable mad


...

Hors ligne

#1040 Le 04/04/2013, à 04:34

grim7reaper

Re : /* Topic des codeurs [8] */

Ha ouais, quand même…
Epitech va devenir le PC SOFT des écoles.
Pour rappel, critiquer ou dire du mal de PC SOFT ou d’un de ses produits (genre Windev…) est souvent synonyme de procès dans ta gueule. En même temps, quand on n’a rien d’autre que son image, on peut comprendre qu'il faille la défendre.

Bon après, je trouve ça franchement naze (pas la réaction des admin/modo qui, elle, est compréhensible) car maintenant il suffit d’envoyer un petit email au forum pour dire ça c’est de la diffamation, et hop c’est censuré (car les forums veulent rarement, et c’est plutôt compréhensible, se lancer dans un procès pour prouver que l’utilisateur est dans son bon droit). Super pratique comme truc pour contrôler à moindre frais ce qui se dit sur toi…

Tiens, faudrait peut-être faire des sauvegardes des dernières pages de ce topic, au cas où les admin’ recevrait encore un email…

Dernière modification par grim7reaper (Le 04/04/2013, à 04:36)

Hors ligne

#1041 Le 04/04/2013, à 17:23

The Uploader

Re : /* Topic des codeurs [8] */

La stratégie de Mozilla pour les jeux vidéo sur le Web ouvert

A lire pour ceux qui aiment :
- le Web
- les jeux vidéo
- les langages
- les optimisations
-etc...
wink


- Oldies PC : Intel Pentium 3 @ 800 Mhz sur CM ASUS P2B-F, GeForce 4 Ti4800 SE, Disque Dur Hitachi 160 Go, 512 Mo de RAM, 3DFX Voodoo 2, Sound Blaster 16 ISA PnP, Windows 98 SE / XP)
- Desktop : Intel Core i7 6700K @ 4 GHz sur CM ASUS Z170-P, GeForce GTX 1070, SSD Samsung 850 EVO 1 To, 16 Go de RAM, Disque Dur Seagate Barracuda 3 To, Windows 10

Hors ligne

#1042 Le 04/04/2013, à 17:27

:!pakman

Re : /* Topic des codeurs [8] */

The Uploader a écrit :

La stratégie de Mozilla pour les jeux vidéo sur le Web ouvert

A lire pour ceux qui aiment :
- le Web
- les jeux vidéo
- les langages
- les optimisations
-etc...
wink

Thx smile


...

Hors ligne

#1043 Le 05/04/2013, à 06:57

Mindiell

Re : /* Topic des codeurs [8] */

moi-même a écrit :

Le veau n'est pas frais.
Contrepètrie de programmeur trouvée sous ma douche à l'instant, sous licence CC0 tongue

(et page 42 en plus roll)

Hors ligne

#1044 Le 08/04/2013, à 13:21

Rolinh

Re : /* Topic des codeurs [8] */

Hy: Lisp en Python (comprendre: une variante de Lisp qui génère du code Python AST)

(import requests)
 
(setv req (requests.get "http://hy.pault.ag"))
(if (= req.status_code 200)
  (for (kv (.iteritems req.headers))
    (print kv))
  (throw (Exception "Wrong status code")))

C'est testable ici.

Heu... Marrant mais  j'ai vraiment du mal à saisir l'intérêt... L'un de vous en voit-il un?

Hors ligne

#1045 Le 08/04/2013, à 13:39

Rolinh

Re : /* Topic des codeurs [8] */

@grim: le coup du

add_definitions(-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64)

fonctionne pour la personne qui m'avait rapporté le bug de dfc qui échoue sur des systèmes 32-bits avec volume de +4To. Du coup, la question que je me pose est est-ce que cela est suffisamment propre ou faudrait que je teste dans le CMakelist.txt si on est dans un système 64-bit ou non (comment d'ailleurs?) et le définir seulement dans ce cas là? C'est surtout le _FILE_OFFSET_BITS=64 qui me dérange de setter comme ça à l'arrache.

EDIT: sorry pour le double-post big_smile

Dernière modification par Rolinh (Le 08/04/2013, à 13:39)

Hors ligne

#1046 Le 08/04/2013, à 14:04

grim7reaper

Re : /* Topic des codeurs [8] */

Rolinh a écrit :

@grim: le coup du

add_definitions(-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64)

fonctionne pour la personne qui m'avait rapporté le bug de dfc qui échoue sur des systèmes 32-bits avec volume de +4To.

Ok, cool smile

Rolinh a écrit :

Du coup, la question que je me pose est est-ce que cela est suffisamment propre ou faudrait que je teste dans le CMakelist.txt si on est dans un système 64-bit ou non (comment d'ailleurs?) et le définir seulement dans ce cas là?

Tu pourrais tester ouais, mais je ne suis pas sûr que le jeu en vaille la chandelle.
D’une part, parce qu’il semblerait que si tu compiles pour du 64-bit ça ne change rien :

http://users.suse.com/~aj/linux_lfs.html a écrit :

64 bit systems like Alpha, IA64 and x86-64 don't have problems with large files but do support the new interfaces also. In this case the new interface is mainly an alias to the normal interface.

D’autre part parce que ce n’est pas si simple à tester correctement (cas de la cross-compilation => architecture du système hôte différente de l’architecture du système cible).
Après, tu peux faire une solution un peu plus manuelle, mais plus sûr (même en cas de compilation croisée) : ajouter un flag ENABLE_LFS (tout comme tu as un flag ENABLE_NLS).

Rolinh a écrit :

C'est surtout le _FILE_OFFSET_BITS=64 qui me dérange de setter comme ça à l'arrache.

C’est-à-dire ?

Dernière modification par grim7reaper (Le 08/04/2013, à 14:06)

Hors ligne

#1047 Le 08/04/2013, à 14:26

Rolinh

Re : /* Topic des codeurs [8] */

grim7reaper a écrit :

Après, tu peux faire une solution un peu plus manuelle, mais plus sûr (même en cas de compilation croisée) : ajouter un flag ENABLE_LFS (tout comme tu as un flag ENABLE_NLS).

Ah ouais, très bonne idée. smile Je vais faire comme ça tiens.

grim7reaper a écrit :

C’est-à-dire ?

Je sais pas trop, ça me semblait un peu bourrin.

EDIT: bah voilà, dfc 3.0.2 est de sortie. smile

Dernière modification par Rolinh (Le 08/04/2013, à 15:33)

Hors ligne

#1048 Le 08/04/2013, à 16:21

Epehj

Re : /* Topic des codeurs [8] */

Salut les dev',

J'ai une question, mais je trouve pas la réponse.

Dans un code que je lis, un des dev' fait toujours ça :

bool bLoadOk = deviceSync.loadFile(strFile, iFileType);
	if (bLoadOk==false)
	{
         blablabla
	}
    else … 

Est ce qu'il y a un intérêt à faire ça plutôt que if(!bLoadOk) ?
Si vous avez une opinion, je prends.

-- Edit
Ah pardon, c'est du C++.

Dernière modification par Epehj (Le 08/04/2013, à 16:33)


Linux user #447629 - Ubuntu user # 21770
C'est en sciant que Léonard devint scie

Hors ligne

#1049 Le 08/04/2013, à 16:24

Pylades

Re : /* Topic des codeurs [8] */

Euh… c’est quel langage ? neutral


“Any if-statement is a goto. As are all structured loops.
“And sometimes structure is good. When it’s good, you should use it.
“And sometimes structure is _bad_, and gets into the way, and using a goto is just much clearer.”
                Linus Torvalds – 12 janvier 2003

Hors ligne

#1050 Le 08/04/2013, à 16:43

Rolinh

Re : /* Topic des codeurs [8] */

Bah a priori aucun... c'est juste un peu moche.

D'ailleurs, je trouverais quand même plus logique de faire un

if (bLoadOk) {
    // traitement quand vrai
} else {
    // traitement quand faux
}

Hors ligne