Alors c´était quoi ? ![]()
J´ai deplacé mon image dans un autre repertoire donc il ne la trouvait pas.Désolé pour le derangement. ![]()
ç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 !
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
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
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
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 !
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
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
++
Se cours de http://www.fvirtman.fr.st JYY est tres simple est tu passeras rapidement a le pratique avec les base
=> 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
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 ?
Es ce que quel qu´un serais commant elevait le retour a la ligne automatique après un cin
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.
Tiens conoi j´y ni est pas pensé je file vers ton tutorial.
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.
voila le prog
la modif qui fait " planter" est entre
et
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)
{
scanf("%49[^\n]", buffer);
scanf("%s\n", buffer); ![]()
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 ![]()
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
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
j´ai eu mon premier cour de C ce matin et le prof a dit qu´on utiliserait gcc sous linux