CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

Un paquet de questions sur le C++

uv_blackangel
uv_blackangel
Niveau 4
30 juin 2005 à 21:30:40

Salut à tous. Je suis un nouveau sur ce forum et, moi qui ai l´habitude de lire le sujets, je me suis décidé à poster. Il y a pleins de chose dans le C++ et dans ce qui l´entoure que je ne comprend pas. Même si un forum de jv.com n´est pas le meilleur endroit pour poster des questions de programmation, l´ambiance m´a convaincu ( hum..). Bon passons aux choses sérieuses:

1°) Je ne comprends pas la différence entre un moteur genre Game Incubator et OpenGl ou DirectX

2°) J´aimerais savoir ce qu´est un SDK et un FrameWork ( .net?)

3°)J´ai acheté un livre s´intitulant C++ Facile des éditions Marabout et je n´ai rien compris à leurs explications sur sscanf, scanf et printf page 42/43 ( pour ceux qui l´ont). En bref à quoi servent et comment utiliser ces deux fonctions?

4°) Je me suis rendu compte grâce à un logiciel qui modifier le contenu des DLL que l´on pouvait mettre plein de contenu dans celles-ci. A quoi servent-elles précisément et comment les programmer?

5°) Est ce que vous avez une bonne adresse qui explique la programmation Win32 avec des fenêtres ( dos ça commence à souler...)

Merci pour toutes vos réponses. Je voulais aussi dire à J2Y ( JeanYvesYves) que ses tutos sont trés bons. Quelles bonnes idée de nous fournir un tutorial directement dans le code source!! L´IDE lancé et le programme prêts à être compilé, cela nous incite vraiment à " jouer" avec le code et donc à le modifier pour voir comment tout cela fonctionne et donc à vraiment apprendre et comprendre. De plus, on voit déjà la coloration, spécifique à notre IDE, qui nous habituera pour l´avenir. Bravo donc, superbe idée!!

Poubi
Poubi
Niveau 6
30 juin 2005 à 21:55:22

Bonsoir,

1) OpenGL = Portable sur tous les OS
DirectX = Windows uniquement
( Il y a aussi le fait que tel moteur est plus simple que l´autre )

2) SDK = J´en sais rien
Framework = Environnement de travail

3) scanf c´est pour lire les données de ton clavier
printf sert à les afficher ( C´est pas du C++ ça, mais du C )

4) Aucune idée

5) T´as SDL en environnement graphique ou je ne sais plus quel site ( J´vais te chercher ça )

Voilà, j´espère avoir répondu à tes questions :x

Moule53
Moule53
Niveau 10
30 juin 2005 à 21:56:55

SDK est un kit de developpement fournis par les developpeurs

JeanYvesYves
JeanYvesYves
Niveau 10
30 juin 2005 à 22:07:56

salut !
tout d´abord merci de tes compliments :)

1) opengl et directX sont des librairies graphiques bas niveau : c´est a dire qu´elles savent faire les fonction élémentaires pour un affichage 3D. Si un programme est une pyramide, opengl et directX sont des briques plutot en bas sur lesquelles reposent tout le reste.
Game Incubator est un moteur + haut niveau : il s´appuie sur DirectX je pense ( je peux me tromper) et propose des fonctions supplémentaires.

2) SDK, c´est les . h et les . lib nécessaires pour le programmeur.
Par exemple, la SDK de DirectX permet au programmeur de mettre des fonctionnalités DirectX dans son programme.
Contrairement a ce qu´on appelle le " runtime" qui sont des dll ( on verra apres) et qui servent uniquement a l´utilisateur.
Le framework est un environnement de travail comme disait Poubi

3) printf et scanf servent a lire et écrire du texte. cin et cout sont leurs homologues en C++
Si tu n´aimes pas printf et scanf, tu peux utiliser cin et cout.
Sinon, regarde mon tuto, y´a une annexe sur le philosophie C. ( a peine commencée cependant...)

4) une dll contient du code compilé : c´est une librairie dynamique. Le programmeur dit a son programme " pour la fonction truc, tu iras chercher dans cette dll"
c´est pour cela des fois, un programme que tu lances peut te réclamer une dll...
L´avantage d´une dll, c´est que si tu mets dedans des fonctions qui peuvent etre améliorées, alors le jour ou tu les améliores, tu changes juste la dll, et ton programme prendra un coup de jeune, sans pour autant changer l´exe !
Des compilateurs comme VisualC++ et surement DevC++ permettent d´en faire.

5) désolé, la WinApi, j´ai pas encore fait :)
Je n´ai que la console, et les modes graphiques plein écran ( utilisés par les jeux)
Les librairies qui permettent de faire des boutons windows, des trucs comme ça, y´en a : il parait que WxWidget est super, mais perso, j´ai pas utilisé, hihi :)

uv_blackangel
uv_blackangel
Niveau 4
30 juin 2005 à 22:10:30

:merci:
Par environnement de travail, qu´est ce que t´entend?? T´as pas trop répondu à la 1ere question mais bon je vais essayer de la refomuler:

En fait, on m´a expliqué que chaque os servait d´interface entre le matériel et le logiciel par le moyen de pilotes, ce qui est un grand avantage pour que les programmes soient compatibles sur toutes les machines. Ok c´est pas compliqué. Aprés on m´a expliqué que DirectX avait à peu prés la même fonction. Quoi?? Heu...Si le système d´exploitation le fait déjà, pourquoi refaire un autre programme par dessus. Aprés quelques recherches, j´ai essayé de synthétiser et voilà ce que j´en ai conclu: DirectX ( Direct3D dans notre cas) et OpenGL sont des programmes que la carte graphique doit supporter ( donc en fait le contraire de l´OS qui doit supporter le matériel), permettant ainsi d´établir une certaine " norme" pour le dessin 3D. Alors quand on me parle de moteur 3D, j´avoue que je comprends pas! A quoi sa sert, on a déjà Direct3D et OpenGL?? Arf...le même problème se pose.

J´espère que c´est un peu plus clair et que sa ne vous a pas trop embrouillé :lol:

lag-it
lag-it
Niveau 10
30 juin 2005 à 22:10:40

uv_blackangel > 1/ GameIncubator est un moteur de jeu construit à partir de DirectX ou OpenGL, je sais pas car je m´en sert pas.
On peut appeler cela un " wrapper" qui " emballe" les fonctions de DX ou OGL à travers des fonctions/interfaces plus simples d´accès.

2/ SDK : software developpement kit : une librairie.
Framework : librairie généralement assez complète intégrant de nombreuses fonctionnalité : exemple, le framework wxWidgets ou . net

3/ Regarde l´aide en ligne de ton IDE/Compilatuer : il y a des exemples.

4/ DLL signifie Dynamic Link Library : librairie à linkage dynamique, qui s´oppose au librairies à linkage statique ( *.lib).
A l´instar de n´importe quelle librairies, les DLL permettent notament d´utiliser des fonctions déjà écrites ( tu connais déjà scanf, printf) sans que tu aie à les reprogrammer.
La seule différence, c´est qu´un programme lié statiquement possédera tout le code des librairies dont il a besoin dans son exécutable ( et pèsera donc plus lourd) alors qu´un rogramme utilisant les dll aura besoin des dll pour obtenir le code qui lui manque.
L´avantage des dll, c´est que plusieurs programmes différents peuvent utiliser la même et qu´il est facile de mettre à jour certaines parties d´un programme, en changeant la dll sans avoir à recompiler tout le programme. L´avantage du static, c´est que ton exécutable n´a besoin de rien d´autre.

5/ http:www.developpez.com fourni des cours sur l´api win32. Sinon il existe plein d´autres sites ( google) ou de très bons livres comme la bible de Petzold. Néanmoins si tu apprends un langage objet comme C++, il est plus intéressant de te tourner vers une librairie objet type MFC, wxWidgets, QT, Windows Forms...

Poubi > il demandait de la prog win32, pas de la SDL.

[LoCkLeSs]
[LoCkLeSs]
Niveau 10
30 juin 2005 à 22:12:00

1/ Un moteur c´est en principe haut niveau, c´est à dire que c´est plus simple d´utilisation, tu as des classes/fonctions pré à l´emploie.

2/ Un SDK : standard developpemtn kit, un framework je sais pas trop expliqué, mais . NET c´est une technologie qui vise à réutiliser plusieurs libraires dans des languages différents ( corrigez moi si je me trompe).

3/ Déja dis.

4/ Les DLL ce sont un ensemble de fonctions que tu utilises dans tes programmes, des libraires dynamique pour la traduction mot à mot, pour les programmer faut chercher sur le net, c´est pas bien compliqué.

5/ Oui :

http://chgi.developpez.com/windows/
http://bob.developpez.com/tutapiwin/

lag-it
lag-it
Niveau 10
30 juin 2005 à 22:12:01

Lol, trop lent :-)))
Et oui wxWidgets est super :oui:

uv_blackangel
uv_blackangel
Niveau 4
30 juin 2005 à 22:13:36

Promis Jean Yves Yves j´avais pas vu ton post
:desole:
Arf, je me suis tapé tout ce texte alors qu´on a déjà répondu à ma question.....

[LoCkLeSs]
[LoCkLeSs]
Niveau 10
30 juin 2005 à 22:14:33

lol, tout le monde a répondu au meme moment ^^

Blawk
Blawk
Niveau 10
30 juin 2005 à 22:18:10

1. OpenGL et DirectX sont des bibliothèques offrant un accès de très bas niveau sans pour autant devenir dépendant du matériel ( pas besoin de reprogrammer les fonction pour que ça marche sur toutes le scartes graphiques). GameIncubator est une bibliothèque basée sur DX ou OGL qui fournit à l´utilisateur des fonctions pour programmer des jeux.

2. Un FrameWork est un ensemble de fonction permettant de faire fonctionner une certaine sorte de programme. Une sorte d´OS dans l´OS. Un SDK est l´ensemble des fichier permettant de programmer pour un framework. ( Concrètement, des header et des . lib, en C et C++.)

3. T´occupe pas de printf et scanf, tu fais du C++ ; -). Utilise les flux C++.

4. Une DLL est " une partie de programme". L´avantage est que en divisant un programme en partie, ont peu mettre à jour une sans changer les autre. De plus, plusieurs programme différents peuvent utiliser une partie commune.

5. La programmation Windows, il n´y a rien de plus chiant ; -).

Blawk
Blawk
Niveau 10
30 juin 2005 à 22:19:01

Toujours un train de retard moi ; -).

lag-it
lag-it
Niveau 10
30 juin 2005 à 22:20:13

Lol, c´est la mobilisation générale ce soir :-d
Si avec ca uv_blackangel n´a pas sa réponse.

uv_blackangel
uv_blackangel
Niveau 4
30 juin 2005 à 22:23:10

Je croit que ça va aller non? Vous dites tous la même chose :lol:
En tout cas merci ça répond à mes questions :)

Sous forums
  • Aide à l'achat Mac
  • Création de sites web
  • Internet
  • Macintosh
  • Création de Jeux
  • Linux
  • Programmation
  • Steam Deck
  • Hardware
La vidéo du moment