pour ceux que ça interresent j´ai fait la table complète des \xXX
ici en image : http://www.filespace.org/Dorian/caract__res_speciaux.PNG
Salut Jean Yves Yves , je suis debutant et j´ai telecharger les tutos sur ton site mais il y a un truc que je ne n´arrive pas a faire :
C´est le cour numero 08 , dans un exercice on demande d´afficher 100 fois le refrain d´une chanson , mais quand je le fais ça :
using namespace std;
void refrain()
{
cout < < " refrain " < < endl;
cout < < " refrain " < < endl;
cout < < " refrain " < < endl;
cout < < " refrain " < < endl;
int i;
for(i=0;i<=100;i++)
refrain();
}
int main()
{
cout < < " couplet " < < endl;
cout < < " couplet " < < endl;
refrain();
cout < < " couplet " < < endl;
cout < < " couplet " < < endl;
refrain();
cout < < " couplet " < < endl;
cout < < " couplet " < < endl;
refrain();
system("PAUSE");
return 0;
}
Le refrain s´embale , il n´arrete pas de s´ecrire
et cela jusqua que je coupe . ..
Alors ? ou est mon erreur ?
bonjour je vient a peine de commencer mon jeu mais je ne c´est pas comment faire pour ke mais map crée soit dans mon jeu merci a++
Bon finalzment j´ai reussi tous seul excuser le derangement . ..
![]()
Darksalamandar > c´est tres logique que ça ne s´arrete pas ![]()
En effet, si tu regardes juste le code de " refrain", qu´est ce qu´un refrain ?
un refrain pour toi, c´est :
afficher les phrase.
faire 100 refrains...
donc en fait, quand tu lances 1 refrain, ça en relance d´autres, qui eux meme en relancent d´autres, qui eux meme en relancent d´autres, etc etc... a l´infini ! ! ( non, en réalité, si tu laisse tourner, a un moment, l´ordi arrete le prog et te met un message d´erreur...)
Ce qu´il faut faire :
using namespace std;
void refrain()
{
cout < < " refrain " < < endl;
cout < < " refrain " < < endl;
cout < < " refrain " < < endl;
cout < < " refrain " < < endl;
int i;
}
int main()
{
for(i=0;i<=100;i++)
refrain();
system("PAUSE");
return 0;
}
La, un refrain, c´est juste écrire les phrases...
et tu lances le refrain 100 fois depuis l´extérieur, donc ça roule
Il faut " dérouler" ton programme, c´est a dire, te mettre a la place de l´ordi, et faire betement ce qu´il y a de marqué...
Avec ton programme du dessus, tu verras que tu boucles ( on dit récurse dans ce cas) infiniment en rappelant la fonction Refrain...
Salut,j´ai quelque question je programme avec SDL, je me demande si pour la rapidité si c´est plus rapide d´écrire les couleur en hexadécimal(surement) ou avec SDL_MapRGB(), si c´est en hexadécimal es-ce beacooup plus rapide. De plus, je suis en train d´apprendre l´api windows(je ne me préoccupa de la portabilité), es-ce puissant, on peux tous faire avec? Es-ce que si je la connait, es-ce mieux de faire un jeu avec SDL ou l´api win32?
si tu connais le format de ton backbuffer, écris directement dedans dans le bon format. C´est sur que si tu veux remplir une image 1024x768x4 et que tu appelles une fonction pour chaque pixel, qui convertit dans le format souhaité, c´est BCP de pertes pour rien...
Quand à l´API win32, elle est en soi relativement limitée, ça se restreint à la base de la base ( apres, il y a toutes les librairies que tu peux utiliser qui se greffent dessus, comme MFC ou autre). Mais win32 ne se suffit aucunement à soi meme pour faire un jeu notamment : tout ce que tu as comme outils de dessin, c´est le GDI... Impensable donc ( à moins de vouloir faire un demineur, et encore)
Il te FAUT une API orientée graphique 2D ou 3D pour couper à traver les couches de l´OS et dialoguer directement avec les drivers et le hardware ; sans ça, les performances ne sont pas au rendez vous. Apres, que ce soit du SDL, tu PTC, du DX ou du GL, libre à toi, mais tu auras besoin de qqch.
Plus tard, je veux être programmeur de jeux video, es-ce que win32 est utilisé dans les jeu commerciaux?
oui et non ; si tu fais un produit pour PC, il y aura forcement une base en win32 pour toute l´init, mais en dehors, pas grand chose. En general ca existe deja, donc a moins d´etre dans l´equipe engine et de bosser sur un projet " from scratch", non ca servira a rien. D´autant que si le produit cible plusieurs plateformes a la fois, toi ca est encapsule pour etre le moins dependants de la cible.
Sinon tu peux faire des tools, mais la ce sont plus des API de GUI qui te seront utiles, en combinaison d´un peu de win32
limité l´API win32 ? ?
je veux bien croire que BitBlit & Cie ça soit un peu limité pour faire une aplication graphique ( quoi que, ça dépend de ce u´on entend par là), mais l´API ne se restreint pas du tout à la base de bases, et couvrent au contraires de façons exhaustive des centaines de domaines.
C´est incroyable de voir que dès qu´on recherche une fonction elle existe.
Un tout petit exemple parmis bien d´autre : l´autre jour j´écrivais une aplication en mode console; et à un moment je m´aperçoit qu´il faut absolument que je sache quand est-ce que l´utilisateur ferme la console, je me suis dit mince va falloir que je refasse tout ça avec une fenêtre etc... mais non, il y avait une fonction qui était là à m´attendre : SetConsoleCtrlHandler qui sert justement à définir une fonction qui va traiter certain messages que recoit la console dont la demande de fermeture etc. C´était exactement ce qu´il me fallait!
Pour ce qui est de MFC et ATL, à l´exception de ce pour quoi c´est prévu ( encapsulation d´objet COM ou ActiveX) les 9/10 des fonctions sont juste des fonction de l´api win32 à qui ils ont enlevé un paramètre car ils ne sert à rien et donc c´est un tout petit peu plus simple.
je veux bien croire qu´il y a plein de défaut, mais win32 est quand même l´API systeme la plus développé d´après moi, bien au delà de ce que fournit un posix par exemple ( quoi que ma connaissance de la question soit assez limité, donc si vous me dites le contraire je vous croirai)
ce sont des fonctions de management de base, il n´y a rien de dedie a une utilisation pour un jeu video par exemple, et c´est bien normal. Je ne dis pas que l´API est " vide", bien au contraire, mais qu´elle se restreint aux choses elementaires qui touchent directement l´OS, et uniquement ca ( ce qui parait logique..)
Essaye de faire des animations de sprites en GDI, ca va tres vite etre deborde, parce que ce n´est pas du tout prevu pour, et ce n´est pas le but.
quant aux MFC ce ne sont pas des " fonctions", mais uniquement des specialisations de classes, pour accelerer le developpement. Il faut savoir par ex. qu´en pur win32 TOUT element element graphique est une " fenetre", si si : tu veux faire une fenetre, un bouton, une scrollbar ou une icone ? ben en win32 t´as pas le choix, tu creer une window, tu init comme tu veux, tu ecris un handler dedie, etc. C´est TRES long, et faut recreer tous les composants de base. Les MFC proposent de widgets deja tout fait, y´a plus qu´a utiliser ou deriver. Pareil, ATL est une autre alternative.
Mais on sort du domaine du win32, avec ca.
Et pour POSIX, ce n´est pas une API, mais un standard. Apres, qu´on retrouve les memes fonctions dans differentes implementaions POSIX, c´est normal
Bonjour tout le monde,
Voilà j´aimerai apprendre le C pour commencer et je souhaiterai savoir quel site me conseillez vous pour l´apprendre!
Merci d´avance ![]()
Achete toi des livres ; )
Nan pas envie je veux plutot avec des sites ![]()
Supom99 > y´a mon site si tu veux ( cf ma carte)
pouky10 > j´ai pas vu si on t´avait répondu a ta question sur l´hexadecimal :
Je pense que tu demandes s´il est plus rapide de faire :
fonction(10);
ou
fonction(0x0A);
je te répondrai : a l´éxecution, c´est PAREIL :
En voici la raison :
c´est a la compilation que, le 10 ou le 0x0A sont convertis en binaire... Donc une fois compilé, c´est pareil, donc, a l´éxecution, c´est pareil !
Apres, est ce que ça ralenti la compilation ?
- je dirais qu´a la compilation, tu n´es pas a une seconde pres
- et en plus, meme si ça ralentissait a la compilation ( rien n´est moins sur), je pense que tu perdrais 1/4 de secondes toutes les 1000000 de valeurs lues....
En conclusion : mettre de l´hexa ou du décimal dans le code, ça ne change rien ![]()
Alors si tu es + a l´aise avec le décimal, comme bcp d´etres humains, ne t´en prive pas ![]()
Bonjour modérateur
Voilà je suis aller sur votre site,
Donc j´ai télécharger le logiciel qui est gratuit télécharger un script [légalement]
seul problèmes je comprend pas comment mettre le ficheir en executable ![]()
Supom99 >
tu as téléchargé dev C++ ?
il faut que tu cliques sur " ficher"/nouveau projet
ensuite, tu choisis :
" console application"
tu as un fichier avec peut etre déja du code qui apparait, tu le remplaces par le code d´un des tutos de mon site, puis ensuite, tu as des options pour compiler
( compiler = transformer en . EXE, pour faire bref)
Dis moi ou ça coince ![]()
^^^^^ je pense plutot qu´il demandait s´il etait plus rapide d´ecrire directement des int32 dans un backbuffer 32bits ( qu´il est alors bcp plus intuitif d´ecrire en hexa qu´en autre chose, un coup 0xAARRGGBB et c´est fini), ou passer par une macro/fonction qui convertisse un quadruplet ( a, r, g, b) dans le format du backbuffer.
LGV > a vi , en effet, j´avais peut etre mal compris ![]()
int main(int argc , char **argv)
{
int s=1; / / sera le sens de déplacement de l´image : 1 = droite, -1 = gauche
int x=0; / / position actuelle de l´image ( au départ, elle est a 0 en x)
SDL_Rect rect1; // structure rectangle
int fini=0;
init_SDL(); // initialise ( plus haut)
bon comme vous avez peut etre pu le deviner , ceci est un bout de code en sdl et le init_SDL équivaut a:
void init_SDL() // initialise SDL
{
SDL_Init(SDL_INIT_VIDEO); // preapare SDL
screen = SDL_SetVideoMode(1024, 768, 32,SDL_HWSURFACE|SDL_DOUBLEBUF|SDL_FULLSCREEN); / / mode graphique
SDL_ShowCursor(0); / / eneleve la souris
}
Voila ma ptite question:
pourquoi faire le init_SDL apres avoir créer unbe structure rectangle? ( alors quon donne les mensuration du rectangle APRES avoir fait init_SDL ! !!) , ya til un avantage a tirer de cette organisation du code?