TutorielsVous débutez ? C'est ici qu'on commence !
Mon compte
Recherche
Livre d'or
PublicitéVous devez être inscrit pour pouvoir poster des messages
| Page : 1 2 | |
| Pseudo | Commentaire |
|---|---|
| Page : 1 2 | |
Tonio1409
|
# Posté le 29/09/2006 16:50:57 |
|
Groupe : Membres |
Et un 18, un. Pour la clarté des explications et
le schéma bilan : voilà un cours super important qui a été facile à comprendre pour le zero que je suis. Bravo !
Le temps, c'est beaucoup plus que de l'argent... |
Varna
|
# Posté le 06/11/2006 00:54:49 |
![]() Groupe : Membres |
Ben moi je mets 20/20 .
C'est très claire, mais il manque juste des mini tp, juste pour s'exercer. Pour ma part je vais essayé de faire quelques mini tp tous seule mais demain je lis la suite. Je veux avancé et vu que j'adore ça, lol Biz à tous et Bonna Noté
Voila quoi ? lol nan rien a dire sur le passé mais bon va falloir construire le présent. Et dit falloir sa s'ecrit pas comme ça.
Ah bon ?
faloir? Du verbe je falois, tu falois, mdr
(c'etait de l'humour je précise entre moi et moi ) |
Serath
|
# Posté le 10/11/2006 00:26:40 |
![]() Groupe : Membres |
Super tuto : 19/20
Mais, comme Varna, j'aurais aimé quelques petits exercices afin de s'entrainer à utiliser la programmation modulaire. |
The frog
|
# Posté le 14/11/2006 20:22:02 |
Couin couin !![]() Groupe : Membres |
Bravo M@teo, j'ai juste un problème, je n'arrive pas à voir les images utilisateurs ??
Est-ce-que quelqu'un peut m'expliquer ?? Merci d'avance... EDIT : Maintenant j'y arrive, c'est bizarre... |
C0c0
|
# Posté le 20/11/2006 22:39:07 |
Ca y est j'ai une citation !![]() Groupe : Membres |
Très bien expliqué. Clair et simple, un grand bravo, j'ai tout simplement tout compris
20/20 car la perfection existe : M@teo21
|
Bogoris
|
# Posté le 22/11/2006 15:38:24 |
Exit light ! Enter night !![]() Groupe : Membres |
En fait là je suis rendu au milieu du chapitre de la SDL et j'avais toujours pas compris l'intérêt des prototype.
Je viens de comprendre en fait (grâce à un test que j'ai fait qui faisait retourner une erreur à Code::Blocks). L'intérêt majeur en fait (selon moi), c'est le fait que quand des fonctions s'appellent entre elles, on n'ai pas besoin de se soucier dans quel ordre elles sont. Et ça, c'est coooool .
![]() Mes projets
Mes tutos
Autres
|
Anonyme
|
# Posté le 29/12/2006 03:04:41 |
|
Groupe : |
Pas mal, mais un petit 15 car il y a une erreur dans le QCM question 6:
Cherchez l'erreur ! Code : C long fonction(long parametre1, double parametre2); { }; * Une fonction ne peut recevoir un paramètre long et un paramètre double * Une fonction n'a pas de point-virgule à la fin, c'est réservé aux prototypes La bonne réponse est la seconde, dans ce cas, il ne faut pas oublier de mettre le point virgule dans l'exemple
|
SuperBatros
|
# Posté le 12/01/2007 17:32:03 |
|
Groupe : Membres |
Salut M@teo,
j'ai copié collé ton code présentant le prototype de aireRectangle. TOUT MARCHE PARFAITEMENT ! Super normal me diras-tu ! Bon, pour info j'utilise linux et un bête éditeur de texte de terminal (vim). Jusque là tout va bien. Sauf que... j'aime bien bidouiller un peu. J'ai essayé de faire en sorte que le programme demande d'abord la hauteur et la largeur du rectangle avant de faire le calcul. Et là ! Rien ne va plus si les variables (de la fonction aireRectangle et de main) sont d'un autre type que "long" et repérées par %ld dans les textes. Je te copie ci dessous le code qui marche (sauf pour les variables %lf... normal) Citation : Superbatros #include <stdio.h> #include <stdlib.h> // La ligne suivante est le prototype de la fonction aireRectangle : long aireRectangle(long largeur, long hauteur); int main(int argc, char *argv) { long h = 0.0, l = 0.0; printf("Hauteur ?\n"); scanf("%ld", &h); printf("Largeur ?\n"); scanf("%ld", &l); printf("Aire = %ld\n", aireRectangle(l, h)); printf("Rectangle de largeur 5 et hauteur 10. Aire = %ld\n", aireRectangle(5, 10)); printf("Rectangle de largeur 2.5 et hauteur 3.5. Aire = %lf\n", aireRectangle(2.5, 3.5)); printf("Rectangle de largeur 4.2 et hauteur 9.7. Aire = %lf\n", aireRectangle(4.2, 9.7)); } // Notre fonction aireRectangle peut maintenant être mise n'importe où dans le code source : long aireRectangle(long largeur, long hauteur) { return largeur * hauteur; } A partir du moment ou "long" est remplacé par "double" plus rien ne marche... (sauf les variables repéréés par %lf... )
Peux tu m'expliquer pourquoi stp ? |
BebeFoetus
|
# Posté le 14/01/2007 15:49:28 |
![]() Groupe : Membres |
Une perle ce M@teo21 !!!!
C'est mon premier tuto en programmation et je pige tout direct et même pour les pointeurs, apparemment le gros du cours, je l'ai assimilé du premier coup . On verra par la suite si çà se vérifie...
Je voulais également proposer une solution à SuperBatros. Ton problème c'est que tes variables et ta fonction sont déclarés avec des "long" alors que tu traites des chiffres décimaux donc des "double". N'oublie pas aussi de changer tes %ld en %lf
Solution :
Secret (cliquez pour afficher) Code : C #include <stdio.h> #include <stdlib.h> // La ligne suivante est le prototype de la fonction aireRectangle : double aireRectangle(double largeur, double hauteur); /* passage des long en double pour les 2 entrées et la sortie de la fonction */ int main(int argc, char *argv) { double h = 0.0, l = 0.0; // les variables h et l sont des double printf("Hauteur ?\n"); scanf("%lf", &h); // %ld devient %lf pour la saisie de variables en double printf("Largeur ?\n"); scanf("%lf", &l); // %ld devient %lf pour la saisie de variables en double printf("Aire = %lf\n", aireRectangle(l, h)); // %ld devient %lf pour la sortie en double de la fonction aireRectangle /* printf("Rectangle de largeur 5 et hauteur 10. Aire = %ld\n", aireRectangle(5, 10)); printf("Rectangle de largeur 2.5 et hauteur 3.5. Aire = %lf\n", aireRectangle(2.5, 3.5)); printf("Rectangle de largeur 4.2 et hauteur 9.7. Aire = %lf\n", aireRectangle(4.2, 9.7)); Partie inutile puisque l'on entre soi-même la hauteur et la largeur */ } // Notre fonction aireRectangle peut maintenant être mise n'importe où dans le code source : double aireRectangle(double largeur, double hauteur) /* passage des long en double pour les 2 entrées et la sortie de la fonction */ { return largeur * hauteur; } Allez ! J'y retourne pour la suite @++
|
terry
|
# Posté le 15/01/2007 19:40:21 |
Miam cela donne envie :p ![]() Groupe : Bannis |
Salut les zero je trouve ce tuto exellent donc je lui met un 20/20
Bon et oui mon message est court mais il faut que j'y retourne c'est parti pour l'aventure
Mettez votre sujet en résolu quand il l'est et pas dans 3ans, merci ! |
Revelc
|
# Posté le 17/04/2007 23:39:14 |
La Connaissance est une Arme !![]() Groupe : Membres |
Oué , donc c'est plus prudent de ne pas faire des globales mais plutot des local !
Sinon super cours toujours aussi bien expliquer ,
oups j'ai pas vu l'heure passer , m***** deja 11.30 , et moi qu'il voulai passer au cours suivant
20/20 |
benjamin-et-la-prog
|
# Posté le 23/04/2007 18:32:33 |
|
yes enfin un site qui n'est pa Groupe : Membres |
15/20 enfin quelque chose de plus dur !!!
trop cooool j'ai hate d'avoir fini les 3 premieres partie !!!
benjaminnnnnn |
nabouill
|
# Posté le 12/05/2007 10:22:41 |
|
Groupe : Membres |
Ca se complique mais c'est toujours assez clair, merci M@teo (encore 20/20 pour ma part).
Mais j'avoue que la j'ai eu un peu plus de mal a être sûr d'avoir tous compris . Alors comme 2 où 3 l'on dit,
un petit TP ça aide beaucoup a assimilé les choses. UNE PETITE IDEE DE TP:
Un petit Tp qui reprend un peu toutes les choses depuis le début, Un petit programme de calcule mental, qui te pose 10 multiplications a la suite au hasard, et a la fin, le joueur a une note /20 suivant les reponses qu'il a fourni. Pour ça, plusieurs fichiers .h et .c sont requis: (pour bien m'entrainer j'en ai fait un pour chaque fonction, même si c'est pas obliger comme nous l'a bien expliquer M@teo) -main.c -genereNombreAuHasard.c & genereNombreAuHasard.h -caluleDeOrdi.c & caluleDeOrdi.h -compareCalculeJoueurEtOrdi.c & compareCalculeJoueurEtOrdi.h -comparePourIncrementerNote.c & comparePourIncrementerNote.h En réalisant ce TP, je me suis rendu compte de beaucoup de choses, et donc une fois terminé, là je pouvait être sûr d'avoir tous compris (enfin j'espère).
Nabouill |
marpsody
|
# Posté le 15/06/2007 18:31:19 |
|
Groupe : Membres |
je suis en stage, et avant de commencer j'avais parcouru le tutorial, mais là dans mon projet, je fais comme m@teo21, j'ai fait des fichiers .h et un fichier .c, mais quand je veux compilé, sa compile pas ce qu'il y a dans les fichier.h. Il faut que le contenu de ces fichiers (les fonctions) soit mises dans mon fichier source pour que cela compile correctement. Et comble de tout je replace la fonctions dans le fichier.h respectif et ça marche. Je suis pas obligé de faire des couper/coller tout le temps.
|
Druviel
|
# Posté le 21/06/2007 15:04:52 |
![]() Groupe : Membres |
Très bon tutoriel, si je devais le noté je lui mettrais 16.5
Il manquerais cependant des exercices, avec les corrections à la fin du tuto. Du genre, pour aider à la compréhension. Comme vous le disiez M@théo21, c'est en faisant des essais que nous comprenons mieux. Mais le problème (en tout cas à moi, c'est que je manque un petit peu d'imagination ).
![]() Citation : Albert Einstein La théorie, c'est quand on sait tout et que rien ne fonctionne. La pratique, c'est quand tout fonctionne et que personne ne sait pourquoi. Ici, nous avons réuni théorie et pratique : Rien ne fonctionne... et personne ne sait pourquoi ! |
aZerTy56
|
# Posté le 23/06/2007 11:54:56 |
|
Groupe : Membres |
Trop bien le tuto!(comme le site)
Je comprend trop bien tous ca maintenant(encore heureux)
je vien de commencer, et je pense que je vais continuer! Bien commencer c'est mieux que mal commencer (merci siteduzero!) ouai je sais c'est pourri mais bon... |
rodolftaupegun
|
# Posté le 09/07/2007 13:29:37 |
"Qui ne tente rien n'a rien"![]() Groupe : Membres |
Bonjour.
J'aimerais te dire M@teo que ton tutorial est très réussi car je pense qu'il est compréhensible par tous ( sinon il faut vraiment se demander si on est normalement constitué . J'espère sincèrement que je n'heurte personne en disant cela parceque sinon c'est pas volontaire ).
Encore merci de nous faire partager ton savoir qui est pour nous, les nuls non avertis, la base d'une futur connaissance bien étoffée et constituée .
La vie n'est qu'un long fleuve tranquille tant que la mort ne le fais pas sortir de son lit ![]() Alors : Citation : un illustre homme latin Carpe Diem |
cassim
|
# Posté le 30/08/2007 11:13:33 |
![]() Groupe : Membres |
Bonjour à tous, et merci à toi m@teo pour tout tes formidable tutoriaux. Alors voila je suis sous linux et j'ai une erreur bizarre, vous me direz que c'est minime mais j'aimerai savoir d'où ça vient, voila mon code source: La ça écrit sur la console: Hello, world2 Hello, world3 ... Hello, world49 Hello, world50 Code : C - Afficher / masquer les numéros de ligne
Merci d'avance edit: en faite le code était juste sauf pour linux allez savoir pourquoi^^ Cassim |
Jeremie78
|
# Posté le 26/11/2007 21:59:11 |
|
Aide toi et le zero t'aidera Groupe : Membres |
Une petite pensée pour les unixiens ? À la place de : Code : C - Afficher / masquer les numéros de ligne
Mettez : Code : C - Afficher / masquer les numéros de ligne
Générateurs : de Bannières animées (GIF), et celui de Userbars (animées) Web-Modules : outils pour webmasters (compteurs, tchat, news ...) à installer sur son site ! |
DeviantKarot
|
# Posté le 07/12/2007 19:49:18 |
![]() Groupe : Membres |
Le tutorial est très clair mais un point obscure subsiste : Citation Il faut inclure le fichier .h grâce à une directive de préprocesseur. Hmmm, perso quand j'inclus le .h dans le main.c le compilateur m'envoie balader, par exemple : Dans le main.c Code : C - Afficher / masquer les numéros de ligne
Un extrait de tableau.h : Code : C - Afficher / masquer les numéros de ligne
Un extrait de tableau.c : Code : C - Afficher / masquer les numéros de ligne
Et à la compilation Code : Console - Afficher / masquer les numéros de ligne karot@karot-desktop:~/c$ gcc main.c -o prog
/tmp/ccy7x1Bs.o: In function `main':
main.c:(.text+0x43): undefined reference to `afficherTableau'
collect2: ld a retourné 1 code d'état d'exécution
Alors que si j'inclus le fichier 'tableau.c', pas de problème! Ce qui me paraît cohérent d'après ce que j'ai lu dans le tutorial : Citation La commande #include demande d'insérer le contenu du fichier dans le .c. C'est donc une commande qui dit "Insère ici le fichier affichage.h" par exemple. Donc c'est le .c qu'il faut inclure, puisqu'il faut bien qu'il y ait le code de la fonction à un moment donné de la compilation. Vous en pensez quoi? (Comment ça c'est moi qui n'ait rien compris? )
|
khris_adh
|
# Posté le 29/12/2007 19:03:00 |
MoinsTuDorsPlusTesFort![]() Groupe : Membres |
Bonjour, Dans ton QCM tu as écrit : Citation : M@teo21 Lequel de ces fichiers ne sert plus après compilation et peut donc être supprimé sans problème ? Mauvaise réponse : .c La bonne réponse était : .o Explications : Les .o (fichiers objets) sont des fichiers temporaires compilés, correspondant chacun à un .c. Après que le linker ait fait son travail, ces fichiers deviennent inutiles et peuvent être supprimés. Retenez bien : * .c = fichier source (contient le code des fonctions) * .h = fichier header (contient les prototypes des fonctions) * .o = fichier objet (fichier temporaire) * .a = librairie compilée (contient des fonctions compilées, c'est donc similaire à un .o à part que ces fichiers-là faut pas les supprimer parce qu'ils doivent resservir )Dans la question c'était bien dit "après compilation", le linker en fait-il partit ? Si non les .o ne doivent pas être supprimés, puisque se sont justement les fichiers générés lors de la compilation. J'espère mettre bien exprimé, je suis loin d'être expert mais ça me semble logique, salut .
MoinsTuDorsPlusTesFort |
reynolds
|
# Posté le 09/01/2008 17:58:11 |
|
Groupe : Membres |
pffff... Obligé de prendre deux secondes pour écrire un petit message ici parceque depuis le début du cour tout est Parfait... Parfaitement clair, parfaitement expliqué, parfaitement organisé... Génial! Un grand merci à M@téo
|
piloudoc
|
# Posté le 27/02/2008 21:32:10 |
|
Groupe : Membres |
Bonjour, le tuto est toujours aussi bien , à un détail près, mais un énorme détail: c'est que si dans un projet je défini, en plus du main, un certain nombre de sous programmes (fonctions), ils peuvent être dans le main, avant ou après l'appel, ils peuvent être dans des fichiers séparés (même répertoire que le main, mais hors du main) avec ou sans header, ça fonctionne toujours !Qu'est-ce que j'ai raté ? Une petite remarque de plus qui n'a rien à voir avec le sujet précédent: je confirme que des variables globales ne sont pas forcément à éviter, et permettent certaines simplifications non négligeables; mais ceci impose une bonne analyse du sujet qui justifie l'écriture du programme, et une gestion rigoureuse des noms de variables utilisées. Merci et à bientôt de te lire.
|
biosebus
|
# Posté le 10/03/2008 22:33:44 |
|
Groupe : Membres |
Salut ! J ai compris le chapitre, ca c'est cool. Je l'ai appliqué a merveille a mon code du nombre mystere. Cependant une interrogation me cours dans la tête. Lors du remaniment de mon code, j ai passer toute mes fonctions provenant du main a un autre .c avec le .h l'include et tout et tout. alors que tout se déroulait correctement quand toute les fonctions était dans le main, VCB me demande de déclaré NULL dans la fonction qui génère le nombre aléatoire. J avou que ca me laisse perplexe. mais aprés avoir fait un long NULL = 0; dans cette même fonctionne trés bien. Si Mateo pouvait m'éclairé de ses lanternes ![]() voilou toujours de bons tuto sinon ! |
Plexi 00
|
# Posté le 19/03/2008 05:49:36 |
Just do it!!![]() Groupe : Membres |
Désolée! mon commentaire apparaissait dans la mauvaise partie Je voulais le laisser pour les pointeurs! Plexi00 |
bubu2904
|
# Posté le 08/04/2008 15:13:28 |
|
Groupe : Membres |
Merci beaucoup pour ce tuto très bien réaliser et assez facile à comprendre.
|
Jakal
|
# Posté le 08/05/2008 18:56:36 |
|
Groupe : Membres |
Ce tuto est génialissime, mais il y'a un point que j'ai du mal à comprendre... Les prototypes. A vrai dire, je n'ai absolument rien compris aux prototypes Si quelqu'un pouvait m'aiguiller, je serai aux anges. Merci d'avance
|
magiccerbere
|
# Posté le 19/06/2008 03:26:16 |
La liberté vaincra!!![]() Groupe : Membres |
Bien, mais il manque, comme quelque un l'ont suggéré, des exemple de tp précis! Mais sinon, parfait et pour ma part,je le trouve moins dur que le précedent. Pour l'histoire des prototypes, je trouve que tout es trés bien expliqué et je vois mal comment mieux l'expliquer. Relis le cours! 18/20 (19, si il y aurait eu un tp!) Parce que partager, c'est avancer. Et parce que j'ai toujours besoin d'aide en C, magiccerbere@hotmail.fr |
yaz21
|
# Posté le 22/06/2008 01:34:58 |
![]() Groupe : Membres |
C'est un super cours, clair et facile à lire. J'ai juste une remarque concernant les variables globales: Citation : M@teo21 Il est possible de déclarer des variables qui sont accessibles dans toutes les fonctions de tous les fichiers du projet. Citation : M@teo21Pour déclarer une variable "globale" accessible partout, vous devez faire la déclaration de la variable en-dehors des fonctions. Vous ferez la déclaration tout en haut du fichier, après les #include généralement. Pour illustrer tout ça il y a un exemple qui utilisais une variable globale déclarée dans le fichier main.c...et ça marche. Par contre si on a plusieurs fichiers, il faudrait la déclarer dans tout les fichiers *.c (pour qu'elle soit vraiment globale) où alors la déclarer dans un fichier *.h qu'on inclura à tout les autres (ce qui revient un peu au même) Ce qui reste à faire c'est d'initialiser la variable globale, dans un seul fichier (par exemple, dans main.c) sinon ça génère des erreurs. C'est ce que j'ai testé dans les 3 IDE:
Pour m'entrainer j'ai bidouillé ce site |
Vous devez être inscrit pour pouvoir poster des messages
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.
433 Zéros connectés |
6 requêtes |
0.0779s (0.0639s)
