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

J´aide les personne en C/C++

JeanYvesYves
JeanYvesYves
Niveau 10
09 février 2005 à 18:51:25

Alors c´était quoi ? :)

inconnu[pure]
inconnu[pure]
Niveau 6
09 février 2005 à 20:00:07

J´ai deplacé mon image dans un autre repertoire donc il ne la trouvait pas.Désolé pour le derangement. :sarcastic:

JeanYvesYves
JeanYvesYves
Niveau 10
09 février 2005 à 20:49:46

ça dérange pas :) et je dirais que c´est en apprenant qu´on se forge : toi par exemple, a la prochaine erreur du genre, tu vérifieras tout de suite tes images ! et tu ne te feras plus avoir
C´est en se plantant qu´on progresse !

guyver2
guyver2
Niveau 10
10 février 2005 à 00:01:15

voila je vais de commencer le C ( mon premier cours est vendredi matin) alors je me suis jeté sur telechargé.com ( pour prendre devc++) et sur le site de JYY ( pour les cours et exemple)...

bon pour ce ki est de lire et ecrire des variable c´est bon pas de pb ( pour tt ce ki est basik ca va)

les truc nouveaux ( par rapport aux autre langage que j´ai fait :pascal,php,javascript et CAML) me pose plus de pb
j´ai eu du mal a lancer certaints de tes programes
( en fait la plupart de ceux ou tu dis " inclure XXX.lib" , "lier YYY.dll")
j´ai réussit pour les premiers exemples sur les image mais ceux qui s´appellent " openglX.ccp" me résistent.

sinon j´aime assez le programe de chat via internet, mais celui la aussi me pose des probs:
- je n´arrive pas a envoyer autre chose que des mots ( pas des phrase car les epaces font comme si je faisait plusieur fois ENTRER ? est-ce clair ? )
- tu parle ( JYY ) d´une " fct recv non bloquante"
peux-tu m´en donner la syntaxe? stp/merci

JeanYvesYves
JeanYvesYves
Niveau 10
10 février 2005 à 10:46:49

guyver2 >
Je vois que tu as déja bien avancé :) Tu risques de t´ennuyer en cours de C, lol !
La différence qu´il y aura entre tes cours et les tutos, ce sera surement que le prof va t´apprendre " printf" et " scanf" au lieu des cin et cout que j´utilise : le résultat est le meme :) printf est orienté C, cout C++. Cependant, si tu as déja fait le tuto sur le réseau, tu as vu que c´est bien printf que j´utilise dans ce cas. ( j´aurais pu mettre cout aussi...)

Ce qui est étrange est que tu aies réussi a lancer les programmes SDL, et non ceux OpenGL. Donc SDL est bien installé chez toi ?
Mes tutos openGL s´appuient dessus.
Comme tu as vu dans la page " installation de SDL", je parle d´options a mettre :
-lmingw32 -lSDLmain -lSDL

en fait, c´est ça, linker les lib : ici, tu linkes les lib :
mingw32.a
SDLmain.a
SDL.a

si tu veux linker
opengl32.a
glu32.a

il te suffit d´ajouter ça -lopengl32 -lglu32 :)
ce qui donne a la sortie :
-lmingw32 -lSDLmain -lSDL -lopengl32 -lglu32

Peut etre que ça ne s´appelle pas opengl32.a mais opengl.a, a toi d´adapter :)
D´une façon générale :
linker X.a revient a ajouter -lX
Donc voila pour linker une lib :)

Ajouter une dll : met la simplement dans ton repertoire de travail.
Pour OpenGL, normalement, tu n´as pas de dll a ajouter : tous les pilotes de cartes graphique s´en occupent. A moins que tu aies vraiment une vieille vieille carte graphique qui ne supporte pas OpenGL, mais ça devient rare !
Tiens moi au courant pour ce probleme ! !

En ce qui concerne le réseau :
Les mots, ça vient en effet du scanf ( cin a le meme soucis) qui voit l´espace comme un caractere de fin.
Pour désactiver ça :
cin.getline si tu veux faire du C++
ou avec scanf, pour rester dans le meme ton :
scanf("%49[^\n]", buffer);
qui sert a reagir QUE sur le retour de ligne : \n
donc ça te prend ta phrase entiere :)
et qui t´empeche, de plus, a mettre + de 49 caracteres ( ton buffer étant de 50, ça sécurise)
si tu en mets +, les caracteres apres 49 sont ignorés.
A l´occas, faut que je rajoute ça dans le tuto !

Pour le read non bloquant, a ma connaissance, c´est pas trivial :
ce que je fais en général, c´est faire 2 threads ( voir paragraphe L), un qui écoute en permanence le réseau, et l´autre qui poursuit le programme.
Je pense que quand j´aurais le temps, c´est ce que je ferai dans la suite du chapitre J

guyver2
guyver2
Niveau 10
10 février 2005 à 13:00:11

merci bien je vais essayer tt ca

au fait je n´ai pas lu tes cours j´ai juste ouvert les fichier . ccp avec devc++ et lu les commentaire en bas.

et mes cours sont sur le c et non le c++
quelles vont etre les differences en gros???

je revient ce soir pour dire si tt marche

JeanYvesYves
JeanYvesYves
Niveau 10
10 février 2005 à 13:22:05

les différences entre le C et le C++.
Le C++ est une extention objet :
d´abord, qq fonctionnalités en +, comme le passage par référence, et d´autres astuces comme ça.
Mais surtout : la programmation objet : les classes, qui sont des structures enrichies, tres tres pratiques, et qui permet une philosophie différente de la programmation !

En ce qui concerne l´ouverture des fichiers en C ou en C++, en général, tous les compilos gerent maintenant les 2 : tu peux tout combiner, donc ne te fais pas de soucis.
cas extreme, ultra sale, mais qui marche quand meme : un printf suivi d´un cout : ça marche.

On parle souvent du langage C/C++ d´ailleurs.

Tiens moi au courant !

inconnu[pure]
inconnu[pure]
Niveau 6
10 février 2005 à 13:30:24

Je suis entrant de créait un éditeur de niveau pour mon casse briques en dos juste pour me facilter la vie, mais j´ai un problème comment désactiver le retour à la ligne automatique du cin.

Exemple voici un code simple:

int main(int argc, char *argv[])
{
short fract1, fract2;

cin > > fract1 ;
cout < < " /" ;
cin > > fract2 ;
system("PAUSE");
return 0;
}

Se bout de code me donnera par exemple:
"
4
/
2
"

mais ce serais mieux si il y avait
" 4/2"

C´est juste un gout d´estitique mais sa sera tellement mieu

oyaku
oyaku
Niveau 5
10 février 2005 à 15:42:17

bonjour je voudrait l´adrese d´un site ou on peu aprendre le c++ de A à Z ( enfin les fonctions les plus courrates) mais il me faudrait un concentré de cour ou on passe rapidement à la pratique parceque j´ai de bonnes capacité a compredre les choses et que je suporte pas de lire du baratin pour rien .

Voila, si j´ai besoin de ca c´est pour déveloper le projet de jeu " l´invasion des golhems bleus" http://golhem.free.fr

++

inconnu[pure]
inconnu[pure]
Niveau 6
10 février 2005 à 15:45:46

Se cours de http://www.fvirtman.fr.st JYY est tres simple est tu passeras rapidement a le pratique avec les base

guyver2
guyver2
Niveau 10
10 février 2005 à 15:50:07

=> JYY

j´ai juste essayer la modif pour le chat ( falait ke j´aille en cours)

j´ai remplacé
scanf("%s\n", buffer);
par
scanf("%49[^\n]", buffer);

et maintenant une fois la connection établie il n´arrete pas de sauter des ligne sans ke je puisse rien écrire. ? ???

alors est-ce que je me suis planter ou un truc comme ca ? ???

je reviendrais vers 18h30-19h
merci de ton aide

JeanYvesYves
JeanYvesYves
Niveau 10
10 février 2005 à 18:48:47

Tres étrange ce que tu me dis la, pourtant, j´ai essayé un prog simple ( je suis au boulot, donc j´ai pas testé avce le prog de chat),
un scanf normal suivi d´un printf
et un scanf avec [^\n] suivi d´un printf, ça marchait correctement...
Faut voir d´ou ça vient !
En tout cas, c´est bien bizarre ! N´as tu modifié que ça ?

inconnu[pure]
inconnu[pure]
Niveau 6
10 février 2005 à 18:53:19

Es ce que quel qu´un serais commant elevait le retour a la ligne automatique après un cin

JeanYvesYves
JeanYvesYves
Niveau 10
10 février 2005 à 19:01:35

Désolé, je ne crois pas que cin puisse faire cela...
le mieux est d´utiliser autre chose que le mode texte de base. Soit u texte avancé ( comme conio, bien qu´il soit obsolete), soit du mode graphique.

inconnu[pure]
inconnu[pure]
Niveau 6
10 février 2005 à 19:03:03

Tiens conoi j´y ni est pas pensé je file vers ton tutorial.

guyver2
guyver2
Niveau 10
10 février 2005 à 19:16:04

les seul trucs ke j´ai changé sont:
-j´ai rajouté un message de confirmation de connection sur la partie serveur
-j´ai changé " void main" par " int main" car le compilateur me disait que main devait renvoyer un int et jusqu´a " scanf("%49[^\n]", buffer); " ca marchait bien.

guyver2
guyver2
Niveau 10
10 février 2005 à 19:46:45

voila le prog
la modif qui fait " planter" est entre :d) et :g)

  1. include<stdio.h>
  2. include<winsock2.h>
  3. pragma comment(lib,"ws2_32.lib")

int main()
{
int port;
char ip[15];
SOCKET sock;
SOCKADDR_IN sin;
WSADATA wsa;
WSAStartup(MAKEWORD(2,0),&);

printf("Ip : " );
scanf("%s",ip);
printf("%s","\nPort : " );
scanf("%i",&);

sin.sin_family=AF_INET;
sin.sin_addr.s_addr=inet_addr(ip);
sin.sin_port=htons(port);

sock=socket(AF_INET,SOCK_STREAM,IPPROTO_TCP);

bind(sock,(SOCKADDR*)&,sizeof(sin));

if(connect(sock,(SOCKADDR*)&,sizeof(sin)))
{
printf("La connection a echoue\n");
system("PAUSE");
exit(0);
}
printf("connection ok. Ecrivez le premier message...\n");
char buffer[50];
memset(buffer,0,sizeof(buffer));
int err=0;

while(err>-1)
{
:d) scanf("%49[^\n]", buffer); :g) :d) scanf("%s\n", buffer); :g)
err=send(sock,buffer,sizeof(buffer),0);
memset(buffer,0,sizeof(buffer));

err=recv(sock,buffer,sizeof(buffer),0);
printf("%s\n",buffer);
memset(buffer,0,sizeof(buffer));
}
printf("Connection terminée\n\n");
WSACleanup();
system("PAUSE");
}

voila ce que je compile; si je remet
scanf("%s\n", buffer);
ca remarche ( mais en passant juste les mots).

au fait c´est bon pour les " openglX" merci :)

oyaku
oyaku
Niveau 5
11 février 2005 à 14:42:43

inconnu[pure]: Se cours de http://www.fvirtman.fr.st JYY est tres simple est tu passeras rapidement a le pratique avec les base

ben c´es pas mal sauf que moi je préfèrerai travailler sur gcc vu que je veu sortir mon jeu sur linux et windows

JeanYvesYves
JeanYvesYves
Niveau 10
11 février 2005 à 15:32:18

oyaku > devC++ est basé sur GCC

niveau compitibilité, tout tournera sous Linux ( y compris SDL et OPENGL)
sauf :

paragraphe J : réseau
- les memes fonctions, sauf qu´il faut inclure socket.h a la place de winsock2.h
- §L : le parallelisme qui ne marche pas pareil

guyver2
guyver2
Niveau 10
11 février 2005 à 16:13:49

j´ai eu mon premier cour de C ce matin et le prof a dit qu´on utiliserait gcc sous linux

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