Devenir membre club
Connectez vous
Aide & règlement
Votre 1ère visite
Le règlement
Contacter les admins
Contacter le webmaster
Questions & réponses
Comment soutenir CodeS-SourceS
Comment faire un lien vers CodeS-SourceS
Autres questions
A propos & don
A propos du réseau
Les modérateurs
Remerciements
Faire un don
Le livre d'or
Tous les livres
Les dernières parutions
Les plus consultés
Les critiques
Le top des ventes
Le top favoris des membres
Recevoir des livres blancs
Tous les thèmes
Les derniers messages
Les nouveaux messages
Poser une question
Le Chat - IRC
Tous les tutoriels
Ajouter un tutoriel
Les tutoriels en vidéo
Les formations vidéos
Tous les codes
Ajouter un code
Filtrer par catégorie
Filtrer par date
Les plus récents
Les mis à jour
Les codes par jour
Filtrer par niveau
Niveau débutant
Niveau initié
Niveau expert
Filtrer par type
Les codes avec capture
Les codes avec zip
Les codes .Net
Filtrer par qualité
Les plus populaires
Les plus populaires du mois
Les plus téléchargés
Les mieux notés
Top par catégorie
Top des favoris
Filtrer par auteur
Tous les auteurs
Le top des membres
Les snippets
Déposer votre CV
Consulter les offres d'emploi ou de stage
Consulter les CVs
Déposer une offre d'emploi ou de stage
Modèles de CV et lettres
Trouver une convention collective
Les écoles d'informatique
Toutes les écoles
Ajouter une école
Les outils
Outils pour développeurs
Trouver des ressources
Base de données de CodeS-SourceS
Télécharger les meilleurs logiciels
Comparer les prix
Envoyer des ecards
Création de bannières
Annuaire de la prog
Tous les sites
Ajouter votre site
Le dico de la prog
Toutes les définitions
Ajouter une définition
Les évènements
Tous les évènements
Les évènements à venir
Ajouter un évènement
Téléchargements
CodeS-SourceS Toolbox
CodeS-SourceS Toolbar
Toolbar pour FireFox
Fonds d'écran
Les compil's
Nos partenaires
Magazine Programmez
Frontier.fr
Xiti
ProgOnline
Winwise
Editions Eyrolles
Toute la liste
Les RFC
CS
VB, VB.NET
ASP.NET,ASP
C, C++
ColdFusion
PHP
Javascript
Delphi
Flash
Java
Graphisme
Irc
Assembleur
C#
Mobilité
SQL
Foxpro
Python
Regex
Flex
Windev
Ce site au démarrage
begin process at 2012 05 27 20:38:23
Accueil
Codes
Tutoriels
Forum
Livres
Emploi
Services
Connexion
Trouver un code source :
dans
Tout le site
Codes
Tutoriels
Forum
Blogs
Livres
RFC
Icones
News .NET
Boutique
[ Dernières recherches ]
Veuillez saisir votre recherche... Ex: smtp, lire un fichier, rs232
Options de recherche :
Tous les codes
Tous les codes en .Net
Tous les codes sauf .Net
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
Derniers Blogs
IMAGINE CUP 2012, MAKE A SIGN EN FINALE
IMAGINE CUP 2012, MAKE A SIGN EN FINALE
par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article
par junarnoalg
KINECT 1.5 IS OUT !
KINECT 1.5 IS OUT !
par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article
par Vko
LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI)
LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI)
par richardc
Mise à jour des Web API du 14 Mai Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris Mise à jour de Team Foundation Service MechCommander 2 sur Windows 8 Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article
par richardc
REACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITER
REACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITER
par Groc
Une mauvaise utilisation de rx lors de l'écriture d'une couche d'accès à des services peut conduire à des cas embarassants avec des erreurs mal gérées, des appels qui ne partent lorsqu'ils le devraient, et même des résultats incorrects . le tout nuis...
Cliquez pour lire la suite de l'article
par Groc
SHAREPOINT BLOG SITE, PROBLèME D'ARCHIVES
SHAREPOINT BLOG SITE, PROBLèME D'ARCHIVES
par junarnoalg
Dernièrement, nous avons migré le site myTIC vers un nouveau serveur SharePoint 2010. Dans les contenus que nous vouloins récupérer, nous avions un certain nombre de blogs. Nous avons utilisé les commandes Power...
Cliquez pour lire la suite de l'article
par junarnoalg
La suite
RSS
Forum
SUPERVISION DE LA BATTERIE
SUPERVISION DE LA BATTERIE
par romanticgirl
Cliquez pour lire la suite
par romanticgirl
RE : OPENCV ET INTERFACE GRAPHIQUE VISUAL STUDIO
RE : OPENCV ET INTERFACE GRAPHIQUE VISUAL STUDIO
par buno
Cliquez pour lire la suite
par buno
RE : SAC A DOS
RE : SAC A DOS
par hadjkaddour
Cliquez pour lire la suite
par hadjkaddour
OPENCV ET INTERFACE GRAPHIQUE VISUAL STUDIO
OPENCV ET INTERFACE GRAPHIQUE VISUAL STUDIO
par ssaif
Cliquez pour lire la suite
par ssaif
RE : EFFACER UNE IMAGE AVEC SDL EN C
RE : EFFACER UNE IMAGE AVEC SDL EN C
par mouni12imane
Cliquez pour lire la suite
par mouni12imane
La suite
RSS
Côté IT
Utiliser Office 365 pour un projet d?équipe - PART 2
Utiliser Office 365 pour un projet d?équipe - PART 1
SharePoint 2007 : Installation du Service Pack 3 de MOSS
SharePoint 2007 : Installation du Service Pack 3 de WSS V3
Installation de SQL Server DENALI CTP3
Mise à jour de Windows 2003 R2 vers Windows 2008 R2
Upgrade de SQL Server 2005 vers SQL Server 2008 R2
La suite
RSS
Offres d'emploi
Recherche Développeur PHP
Recherche Développeur Sharepoint
Recherche Développeur C++
Recherche Recherche développeur web ASP et ASP.Net
Recherche Analyste Programmeur Adélia
Recherche Développeur eZ Publish confirmé
Recherche AP (H/F) ACCESS EXCEL VBA
Déposer une offre
La suite
RSS
Formations Video
Dreamweaver CS6 : Les fondamentaux
Adobe Muse : Les indispensables
Coffret avantage : Les nouveautés d'Adobe Design Standard CS6
Coffret avantage : Les nouveautés d'Adobe Design & Web Premium CS6
Coffret avantage : Les nouveautés d'Adobe Master Collection CS6
Coffret avantage : Les nouveautés d'Adobe Production Premium CS6
Microsoft Office Outlook 2003 : Les indispensables
La suite
RSS
Appels d'offres
Realisation d-une version 2 d-un site e-commerce existant sous prestashop-REPUBLICATION
Budget :
5 000€
Recherche Infogerance Serveur Debian Linux
Budget :
1 800€
Creation d-un site vitrine avec MagentO
Budget :
2 000€
La suite
RSS
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)
SDEVIS-FACTURES VLPRO (8.1.0.3)
sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa...
Cliquez pour télécharger sDEVIS-FACTURES vlPRO
974 Application Server (12.2.4.6)
974 APPLICATION SERVER (12.2.4.6)
Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc...
Cliquez pour télécharger 974 Application Server
vPicture (1.4.2.1)
VPICTURE (1.4.2.1)
Avec vPicture, hébergez vos images facilement et rapidement. vPicture est un utilitaire simple, ...
Cliquez pour télécharger vPicture
Easy-Planning (2.2.1.6)
EASY-PLANNING (2.2.1.6)
Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au...
Cliquez pour télécharger Easy-Planning
COM-BACKUP (2.0)
COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
+ de logiciels à télécharger
Vidéos drôles
Halloween Party
Terry Tate Office Linebacker Superbowl 2003
Jeu vidéo instructif
C'est un véritable vol !
Banana Song
Comment attraper la grippe A
Parodie Pub Window 7
La suite
RSS
Sondage...
Votre navigateur n'utilise pas le javascript, pour
voter aux sondages de ce site, cliquez ici
Statistiques
1 903 565
membres
141
nouveaux aujourd'hui
16 195
membres club
Comparez les prix
iPod touch 3rd Generation (64 Go)
Entre 374€ et 379€
Visiter le guide achat
CalendriCode
Mai
2012
L
M
M
J
V
S
D
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Consulter la suite du CalendriCode
Photothèque
Visiter la photothèque
CS Tool Box
A découvrir