begin process at 2012 05 27 20:38:23
  Trouver un code source :
 
dans
 

93 commentaire(s) de uaip sur des sources sur cppfrance

Déposé sur Casse brique [c] [sdl]

Ben, ce n'est pas pareil, non.

int a; //Déclaration de variable
a = 10; //Définition de variable
int b = 5; //Déclaration + définition de variable

int max(int a,int b); //Déclaration de fonction (prototype)
int max(int a,int b) { return (a > b)?a:b; } //Définition de fonction

struct c {
int a;
int b;
}; //Déclaration de structure

typedef struct {
int a;
int b;
} c; //Déclaration de structure en nouveau type

c var={10,5}; //Déclaration + définition de variable

Enfin, c'est comme ça que le vois.
Posté le : 25/05/2010 00:02:53

Déposé sur Casse brique [c] [sdl]

Tu es décidément têtu :)
Tu cherches à me convaincre de quelque chose dont je suis déjà d'accord avec toi.
Ton dernier paragraphe est complètement faux. Je l'ai dit et répété, tout mettre dans un .h et inclure dans un .c n'est pas du tout la bonne méthode. On est d'accord là dessus. Mais c'est compréhensible qu'un débutant fasse ça, parce-que c'est plus simple que de créer divers .c. Je n'ai dit que ça, rien de plus.

Concernant le mot "définition", je n'ai jamais entendu de "définition de structure" ou autre, mais seulement des déclarations.
Pour moi, on ne peut définir que 2 entités : fonctions et variables. Les enumérés et les structures étant des équivalents des types, on ne peut que les déclarer.
Donc, .h = déclarations, et .c = définitions.
Posté le : 24/05/2010 21:02:45

Déposé sur Casse brique [c] [sdl]

Salut,
Quelques petites remarques...
"Petit rappel, le .h est un fichier d'entête, il est fait pour contenir les définitions et uniquement les définitions, pas le code."
> Justement, la définition d'une fonction est son code :) tu voulais dire "déclaration", sans doute (le prototype, quoi).

Pour ce qui est de la simplicité, je pense que c'est quand même plus simple d'avoir un .c et plusieurs .h. je dis pas que c'est mieux, au contraire, mais ça permet d'avoir un code linéaire vertical, et non pas un ensemble de fichiers qui contiennent tel ou tel .h, etc. C'est pour cette raison que la plupart du temps, les "débutants" procèdent comme cela ("débutant" n'est pas péjoratif, ici). Découper en plusieurs .c prend généralement un peu plus la tête, au départ (erreurs d'inclusion, etc).

Enfin, mais là c'est pour taquiner, on peut faire de la pseudo-POO en C.

Sinon, je suis d'accord avec toi sur le reste :)
Posté le : 24/05/2010 12:16:57

Déposé sur Casse brique [c] [sdl]

Salut,
C'est rigolo, je procède de la même façon (main() dans .c et autre code dans .h).
Mais si tu veux gagner en rigueur, rien de mieux que de passer au C++, justement (selon moi).
Parce-qu'en C++, tu es "obligé" de structurer ton code en .h/.c.
En C, la structuration modulaire est plus abstraite. Dis toi que tu sectionnes ton projet en modules. Si par exemple, tu fais un client de tchat, tu peux imaginer un module "connexion" (gestion des sockets), un module "GUI" (gestion de l'interface), et un module "données" (gestion des buffers de flux entrant/sortant).
Là, tu fais pour chacun de ces 3 modules un .h et un .c. Dans le .c, tu définies toutes tes fonctions utiles (par exemple pour le module "connexion" : connexion, déconnexion, écriture, lecture, etc) et dans le .h tu écris le prototype de ces fonctions. Ainsi, si tu as besoin des fonctions de "connexion" dans le module "GUI", tu ajoutes un petit "#include "connexion.h"" et le tour est joué.
Tu verras qu'en C++, cette procédure est automatique : tu déclares tes classes dans des .h, tu définies le code des méthodes dans les .c, et lorsqu'une classe a besoin d'une autre, #include est là pour ça.

je lirai ton code plus tard :)

Bonne continuation.
Posté le : 23/05/2010 23:20:30

Déposé sur Class de gestion de sockets en c++ (win)

Pas besoin d'utiliser "using namespace" dans ce cas.
http://www.commentcamarche.net/forum/affich-12675682-c-using-namespace-std

Un autre membre avait posté le lien d'une doc, il y a quelques temps, expliquant parfaitement pourquoi il était déconseillé d'utiliser "using namespace".
Posté le : 03/05/2010 13:14:12

Déposé sur Class de gestion de sockets en c++ (win)

Salut,
"#pragma once" et "#include <StdAfx.h>" = Visual Studio (= Microsoft)
Donc pas totalement portable :)
Posté le : 30/04/2010 03:38:42

Déposé sur Leçon mdl half-life opengl visual c++

Salut,

faute corrigée *
tu compiles *
tu ne verras *
différemment *

Ahah, c'était juste pour faire mon chieur ! :)
Posté le : 22/03/2010 02:41:20

Déposé sur Être avertis lors d'un nouvel article sur un blog de type sky...

Héhé.
En fait, effectivement, les directives sont les mêmes.
Aujourd'hui, j'étais parti sur ton code, pour l'implémenter en Objective-C, et étant bloqué, je me suis petit à petit rapproché d'un code "scolaire" (cf Wikipédia). J'ai trouvé àprès 8h de boulot que le problème venait en fait du "http://" devant le paramètre de gethostbyname(). Alors, je ne sais pas par quel miracle ça fonctionne de ton côté.
Posté le : 16/03/2010 22:22:11

Déposé sur Algorithme de tri d'un tableau par ordre croissant ou décrois...

Salut,
Gnairod m'a devancé quant au nom de tri à bulle.
Info : &tabl[i] devient tabl+i (à mon avis, c'est un détail parmi d'autre qui permet d'accélérer le temps d'exécution).
Posté le : 16/03/2010 01:00:57

Déposé sur Être avertis lors d'un nouvel article sur un blog de type sky...

Salut.
Je ne sais pas pour les gens, mais je trouve ce programme multiplateforme bien cool. Cela dit, tu es sûr qu'il fonctionne correctement sous Windows ? Je me souviens de WSAStartup() de winsock mais je ne me rappelais plus qu'on utilisait send() etc (en implémentant les mêmes types que ceux de sys/types.h et de sys/socket.h).
En lisant ton code, je crois que tu m'as débloqué d'un ENORME soucis (cf le forum).

Juste une remarque, je ne sais pas comment fonctionne GNU Regex, mais s'il utilise la norme PCRE, tu devrais pouvoir transformer ceci : ([0-9]|[0-9][0-9]|[0-9][0-9][0-9]|[0-9] [0-9][0-9][0-9])
en ceci : ([0-9]{1,3}|[0-9] [0-9]{3})
(à vérifier si ma syntaxe est valide)

Cordialement, uaip.
Posté le : 16/03/2010 00:49:53

1 2 3 4 5 6 7 8 9 10


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,328 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales