Aller au menu - Aller au contenu

[Plan du site] Vous êtes ici --- > Le Site du Zéro > Les tutoriels > Officiels > Programmation > Lecture des commentaires

Vos commentaires sur :
La programmation modulaire

Retour au tutoriel

Vous devez être inscrit pour pouvoir poster des messages

Page : 1  2  3 
Pseudo Commentaire
Page : 1  2  3 
Hors ligne Red # Posté le 27/12/2005 23:18:06
Avatar
Groupe : Membres
Hum, ça va, c'est pas encore TROP compliqué ^^

Hâte d'essayer tout ça, plusieurs pages, plein de fonctions, tout ça... ^^

Ich will ein "Site du Zéro" auf Deutsch übersetzt !
 
Hors ligne louisclem # Posté le 27/12/2005 23:21:14
J'aime le
Avatar
Groupe : Membres
Bien bien :p le schéma sur la compilation manquait : il est là maintenant (bon il serait mieux si il y avait plus de flèches, principalement dans les .h vers .c puis mettre les headers des lib aussi inclus...). Sinon rien d'autre à dire : c'est come le précédent et ce qui a été rajouté est très bien et utile, tu as corrigé ce qu'il fallait (ya plus ton nom dans le screenshot on voit que tu as édité le fichier pour enlever la ligne mais que tu n'as pas sauvegardé donc tu as juste enlevé la ligne pour le screenshot :D oui en fait on s'en fout).

Donc voilà : un 19 car du coup il est mieux que le précédent ;)

:soleil: :soleil: :soleil:
 
Hors ligne Infinity # Posté le 28/12/2005 04:37:34
Lao-Tseu a dit...j'ai oublié
Groupe : Membres
Dit M@ateo, ton jeu est open-source ou po? ^^ ça m'interesserait de voir les fichiers,histoire de voir quelques fonctions avancées :D
(qui a dit que je voulais aller trop vite ???)
Hors ligne Spartan03 # Posté le 28/12/2005 10:29:13
Avatar
Groupe : Membres
Un exellent tutoriel (à vrai dire le contraire m'aurait étonné). Mais je pense que Mateo21 aurait pu aussi y inclure la façon de créer des librairies statiques (.a ou .lib) car ce n'est pas une chose très dure à comprendre et en général, ça se place bien à la suite d'un cours dans ce genre.

De plus, ça ne mérite pas d'occuper un chapitre tout entier!

En tout cas bravo!

Sparadox sur le XBOX live (Halo, CoD3...)
 
Hors ligne Chahine # Posté le 28/12/2005 11:11:13
Avatar
Groupe : Membres
Ah je vais enfin pouvoir supprimer ces fichiers .o sans culpabiliser !! :D
Hors ligne Mylans # Posté le 28/12/2005 11:39:12
Avatar
Groupe : Membres
Génial mais un peu compliqué... enfin ca c'est le C ^^

sinon M@teo tu pourrais mettre les jeux dont tu nous montre les fichiers? (on voudrais jouer nous aussi :p )

allez, 19, la perfection n'existe qu'en math ^^
Hors ligne jeremydub # Posté le 28/12/2005 11:47:51
Avatar
Groupe : Membres
Moi je n'avais pas fait comme ca o_O mais je sais pas si c'est correct ?
J'ai créer un fichier fonctions.h et à l'interieur de ce fichier,au lieu de mettre des prototypes,j'ai mis la fonctions complète
Ex.: Code : C
long chiffreHasard(const long MIN,const long MAX)
{
     srand(time(NULL));
     long chiffre;
     chiffre = (rand() % (MAX - MIN + 1)) + MIN;
     return chiffre;
}
ainsi de suite.Et dans mon fichier main.c j'ai mis #include "fonction.h".Je sais pas si sais correct.M@teo, pourrais-tu me repondre en personne :) ?
En ligne M@teo21 # Posté le 28/12/2005 11:53:14
Doh ! Nuts. Mmh, donuts !
Avatar
Admins
Salut,

Pour vous répondre :

- mon jeu est ni opensource ni privé, mais n'est pas forcément un bon exemple au niveau du code source à l'intérieur. Je le réorganiserai peut-être et le mettrai public ok, mais pas de suite je peux pas le livrer tel quel.
- spartan > non le chapitre est déjà assez bien fourni je ne vais pas parler d'inclusion de librairies pour le moment, on s'en fout totalement :p Cela sera expliqué en temps voulu, quand cela sera nécessaire, c'est-à-dire au début de la partie III.
- ze moi > ce sont des fichiers de ressources pour certains (.rc), d'autres sont des fichiers propres à ton IDE, et le makefile est un fichier qui contient les instructions de compilation (il est généré automatiquement par l'IDE, il indique au compilateur quels sont les fichiers à compiler).
- maxdub6 > t'as intérêt à changer très vite ! On ne met PAS le contenu de la fonction dans le .h, on n'y met que son prototype ! Bien sûr ça marche aussi, mais c'est une question de logique et tous les programmeurs font comme ça ;)

Ce qui se conçoit bien s'énonce clairement,
Et les mots pour le dire arrivent aisément.

Nicolas Boileau (je suis fan)
Autobiographe à ses heures perdues :p
 
Hors ligne jeremydub # Posté le 28/12/2005 12:35:46
Avatar
Groupe : Membres
OK.Merci M@teo21 ^^ je ferais plus attention la prochaine fois :p
Pour le Tuto : 20/20 comme d'habitude :-° .Il n'y a rien d'autre à dire :lol:
Hors ligne GAME2OVR # Posté le 28/12/2005 12:52:42
L'espoir fait vivre.
Avatar
Groupe : Membres
Je met 19 :p la perfection n'existe pas ^^ il n'y a juste qu'un "truck" que je n'ai pas compris a un moment tu écris :

long resultat = 0; // Déclaration de variable globale

Mais je ne vois global marqué nul part?

Sinon c'est tres instructif :p bravo ;) !!

Rien ne se perd, rien ne se crée. Tout se transforme.
Mon colorateur
 
Hors ligne jeremydub # Posté le 28/12/2005 13:19:25
Avatar
Groupe : Membres
GAME2OVR > enfait c'est une variable globale car elle se trouve avant la fonction main et pas après .regarde :Code : C
#include <stdio.h>
#include <stdlib.h>
long resultat = 0;//variable globale car avant "main"
int main(int argc, char *argv[])
{
  long nombre = 0;//variable normale car apres "main"
  system("PAUSE");     
  return 0;
}
Hors ligne Havok # Posté le 28/12/2005 20:05:29
Avatar
Groupe : Membres
Juste une chose que j'ai du mal à comprendre. Le .h on l'inclus dans le .c mais les fonctions du .c sont-elles automatiquement prisent en compte par le main.c où je les utilisent ?
En dehors de ça superbe tuto que je vais certainement relir pour être prêt.
Hors ligne dnob700 # Posté le 29/12/2005 00:52:35
Groupe : Membres
toujours aussi sympa comme tuto, il y a juste une remarque qui a été faites déjà dans les premiers chapitres si je me souviens bien, c'est qu'en français, on parle de bibliothèques et non de librairies (logique, après tout c'est la traduction de library).


P.S. Je ne sais pas si ça viens de chez moi, mais depuis quelques jours la partie droite des commentaires est tronqué et je ne peut pas la lire. (comme si ça sortait de l'écran à droite, sauf que ça ne sort pas et qu'il n'y a pas "d'ascenseur" pour voir le texte manquant.
Hors ligne zulon # Posté le 29/12/2005 08:59:04
The shrieker shrieks.
Avatar
Groupe : Membres
Citation : M@téo21
- ze moi > ce sont des fichiers de ressources pour certains (.rc), d'autres sont des fichiers propres à ton IDE, et le makefile est un fichier qui contient les instructions de compilation (il est généré automatiquement par l'IDE, il indique au compilateur quels sont les fichiers à compiler).

Ok merci beaucoup (on peut pas supprimer les makefiles alors?)
Hors ligne Hikapa # Posté le 29/12/2005 12:59:27
The Who, Bowie & Daft Punk
Avatar
Groupe : Membres
on peut pas juste avoir le .exe du jeu sur l'allumette ? Pitié !

Image utilisateur

Je peux aider les gens dans leur projet pour la validation XHTML et l'orthographe, contactez-moi.
Vous savez que vous êtes geek quand vous avez réussi un triple boot.
 
En ligne iPoulet # Posté le 01/01/2006 11:16:31
Avatar
Groupe : Membres
dnob> Tiens chalut. Agrandis ton écran, c'est quand quelqu'un poste une image trop grande.
 
Hors ligne The French # Posté le 01/01/2006 20:27:50
un zero, deux zero, zzzzzzzz
Avatar
Groupe : Membres
Pas mal du tout !!! J'ai hâte de voir la suite de ce cours !!!

MAIS !!! Il y a un truc que je ne comprends pas ???


Dans le code suivant se trouvant dans le tutorial :

Code : C

long incremente();

int main(int argc, char *argv[])
{
    printf("%ld\n", incremente());
    printf("%ld\n", incremente());
    printf("%ld\n", incremente());
    printf("%ld\n", incremente());

    system("PAUSE");
    return 0;
}

long incremente()
{
    static long nombre = 0;     (*)
   
    nombre++;
    return nombre;
}


Comment se fait il que le 'nombre' ne soit pas initialisé à 0 lorsque l'on execute le même programme (voir ligne (*)) ???? Ce n'est pas très clair et des explications s'imposent !!!!
Hors ligne max 2000 # Posté le 02/01/2006 13:24:13
Qui ne tente rien n'a rien.
Avatar
Groupe : Membres
C'est là qu'intervient le mot-clé "static" :p C'est grâce à lui que la la fonction sait qu'il ne faut pas réinitialiser la variable!

aller 1 beaux 18 car je n'ai pas tout compris :p

Image utilisateur
 
Hors ligne Tim-X # Posté le 10/01/2006 19:15:34
Avatar
Groupe : Membres
LoooL, ce n'est pas parce que tu n'as pas tout compris que le tuto est moins bien :D
Ceci dit, c'est toujours aussi clair et plaisant à lire !
J'ai hâte d'en apprendre plus :)
Bon courage M@teo !

Image utilisateur






 
Hors ligne Pliskin # Posté le 12/01/2006 19:07:31
Avatar
Groupe : Membres
Citation : m@teo21
Lorsque la fonction et appelée une seconde fois

LOL une petite faute ...... :p

Un blog pourri de plus...


 
Hors ligne Vince! # Posté le 12/01/2006 21:56:05
Groupe : Membres
Tuto parfait, comme les autres :) La suite, la suite !!!

Vince
 
Hors ligne Apocalypse_Lord # Posté le 13/01/2006 13:03:21
Renaître de ses erreurs
Avatar
Groupe : Membres
Très bon tuto comme tout le site d'ailleurs mais j'ai relevé une toute petite faute dans le cours (un petit rien :p ).
Dans la partie "header" du cours, une phrase me semble avoir un petit souci :
"Ca c'est vous qui vous choisissez"
Le "vous" de "vous choisissez" est pas en trop ? :-°

0 tuto en attente de validation
 
Hors ligne ouiclem # Posté le 17/02/2006 22:21:49
Avatar
Groupe : Membres
Comme d'habitude c'est Tip-Top le cours est clair et logique et se paie même le culot de devancer les ambiguités qu'ont d'emblé les novices.
Un régal à lire :p
Bravo et surtout continu ;)
En ligne Dark-Side # Posté le 18/02/2006 17:44:40
dangerous: ton oncle.
Avatar
Groupe : Membres
Euh vachement bien à part un petit truc que j'ai toujours pas compris comment faire pour utiliser un fonction qui se trouve dans fonction2.c alors que quand on lance le prog on utilise main.c ???

Image utilisateur

Teh Citation §



« Who cares if Erlang starts slowly - it was designed to start once and never stop - we have systems that have run for 5 years - a two seconds start-up time amortized over 5 years is not *too* bad. »

Joe Armstrong.

Citations diverses :


  • Linux c'est comme l'écologie : ça demande des sacrifices mais c'est pour le bien de la planète !
  • Linux ? Ya moins bien ... Mais c'est plus cher ! :p
  • Avec windows XP on était au bord du gouffre, avec windows Vista on a fait un grand pas en avant !
  • Quelle est la différence entre Windows Vista et un virus ??? - Le virus il fonctionne
  • La dernière mise à jour de windows Vista est presque terminée, il ne reste plus qu'à y incorporer les erreurs.
  • <Metzgermeister> bluestorm: suffit pas de se mettre une plume au cul pour avoir l'air d'un coq hein
  • <dangerous> remram44, viole un bébé, détends toi

OCaml : en voilà un tuto qu'il est bien §§
 
En ligne Kogébitenks # Posté le 26/02/2006 18:06:36
Avatar
Groupe : Membres
Je pense que je suis le seul à ne pas utiliser des prototypes dans les headers. :D
Wooooooohooooooooooooooo! :D :D :D :D :D :D :D :D :D :D

CA SSBB : 0688-6734-2115
Personnages que j'aime bien dans SSBB : Wario, Snake, Sonic, Ike , Ganondorf, Lucario
:p
Image utilisateur
Super site ! N'allez pas sur ce site !
"Ceux qui n'aiment pas Dragonball, je ne les aimes pas, mais non ! Je rigole ! :p "Chibi Goku, 21ème siècle.
 
Hors ligne supercoluche # Posté le 14/04/2006 18:56:47
Tous pour M@teo
Avatar
Groupe : Membres
Je vais être clair et rapide (parce que je suis nouveau et que je ne sais pas vraiment comment exprimer mes sentiments): tuto parfait!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

(note 20/20 comme pour tous les autres)
Hors ligne mzel'vivi # Posté le 16/06/2006 14:20:41
Groupe : Membres
Super cool cours ! ^^
Juste une interrogation qui persiste : pourquoi bannir les variables globales ?? On trouve un indice dans le QCM, mais si on fait gaffe à ses noms de variables ça a l'air correct, je ne trouve pas d'explication !
... :euh: on risque quoi avec une variable globale ?
Citation : cours
Ca aura l'air de simplifier votre code au début, mais après vous risquez de vous retrouver avec plein de variables accessibles partout, ce qui risquera de vous poser des soucis.
Citation : QCM
Une variable globale peut être utilisée partout dans le projet. Même si c'est possible de créer de telles variables, il faut éviter de le faire car cela peut poser des problèmes si vous avez une autre variable ayant le même nom ailleurs dans votre programme.
Hors ligne GuardedDragon # Posté le 01/07/2006 15:44:18
Longue vie à Zozor !
Groupe : Membres
Waou ! ^^

J'adore ce tuto Mateo ! (comme tous tes autres que j'ai lus.)

Allez ! hop ! au travail ! Termine moi ça ce tuorial-là ! :p

-------------------
Mais euh... y'a un truc que j'ai pas compris... tu nous recommandes d'utiliser Code::Blocks mais tu fais tes exemples sur Dev, que tu sembles utiliser... j'exige des explications !! :euh: ;)
Hors ligne Slowrage # Posté le 28/08/2006 01:06:57
Groupe : Membres
Très bon tuto,
cependant je tiens quand même à faire quelques remarques, tout t'abord en ce qui concerne les fichiers objets (*.o) certes ils ne sont pas utiles mais quand on travail sur un très gros projet il ne faut surtout pas les supprimer à chaque compilation car celà obligerait à recompiler les fichiers *.c même si aucune modification n'a été effectuée.

Pour les librairies je penses qu'il faudrait préciser que c'est un ensemble de fichiers *.o

En ce qui concerne les directives preprocesseurs, peut etre faudrait-il introduire les directives de conditions #ifndef, #define, et #endif afin d'éviter les redéclarations.

Pour finir, je ne connaissais pas l'utilisation de static pour une fonction et je la trouve plutot étrange car si une fonction est définie dans un fichier *.c elle ne sera pas accessible depuis un autre fichier *.c (pas besoin de static pour ça)

De plus dans ton QCM tu propose l'affirmation :
Citation : M@teo

Par défaut, une fonction est accessible...

* Uniquement dans le fichier où elle est déclarée


Or cette affirmation est vraie puisque si l'on n'inclue pas la déclaration de la fonction (c'est à dire le prototype) au début d'un fichier *.c on ne pourra l'utiliser (le compilateur dira que cette fonction n'est pas déclarée).

Je te remercie pour tes tutos qui me permettent d'apprendre le C, ayant directement appris le C++ ils me permettent de voir quelles sont les différences :)
Hors ligne RedKite # Posté le 16/09/2006 18:12:27
Avatar
Groupe : Membres
Excellent tuto, j'ai une ou l'autre petite question, mais je pense pouvoir répondre à mzel'vivi avant : Citation : mzel'vivi
on risque quoi avec une variable globale ?


Si par exemple tu travail dans un autre fichier .c et que tu utilises une variable qui a le même nom que celle que tu as déclarée en global(oh je suis distrait :D ) tu auras un conflit, il ne voudra pas te créer cette variable et à mon avis ça plantera!

_-RedKite-_
 

Vous devez être inscrit pour pouvoir poster des messages

Retour au tutoriel

Changer de design | En savoir plus | Plan du site | Politique d'accessibilité | Règles | Fil RSS | XHTML 1.0 | CSS 2.0
Édité par Simple IT SARL : Nous contacter | Revue de presse | Publicité

Y'a plus rien à lire, faut remonter maintenant !

Hébergement web - Correction de tutoriels - Créer un site
Vous souhaitez apparaître ici ? Contactez-nous.

Nombre de connectés 382 Zéros connectés | Requêtes SQL 7 requêtes | Temps de génération de la page : Total (SQL) 0.1023s (0.0898s)