# Je voudrais savoir...



## Membre supprimé 2 (13 Octobre 2001)

Salut à tous. Je suis encore moins qu'un débutant puis ce que je ne me suis jamais essayé à la programmation. 
C'est pourquoi je voudrais savoir comment débuter dans cet univers inconnu.
Et j'aimerais par la même occasion savoir ce que c'est que ce CD Outils de développements que fournit Apple si on commande OS X.1
Merci


----------



## Didier Guillion (13 Octobre 2001)

Bonsoir,

Le CD de developpement contient tout ce qu'il te faut pour créer une application qui fonctionnera sous Mac OS X.

L'interface est un peu rudimentaire, mais pas mal de documentations s'installent avec le CD et expliquent la plupart des fonctions disponibles (API).

je te conseille, pour débuter, d'installer le CD developpeur et de compiler un exemple, puis de le suivre pas à pas pour comprendre ce qui se passe et ce que le programmeur fait.

Ensuite, fait une copie du projet et essaye de le modifier par petits morceaux. C'est mieux que de démarrer une application à partir de zéro.

Bien sur, la question que tu dois te poser face a cet outil c'est avant tout : "Qu'est ce que moi je veux faire ?". 
L'outil ne restera toujours qu'un outil.


Cordialement


----------



## gribouille (13 Octobre 2001)

interressant


----------



## simon (14 Octobre 2001)

A noter que les outils du developeur ont été mis-à-jour (début octobre) dispo sur le site des developeur d'Apple...

et effectivement cela te donneras la possiblité de créer des applications pour OS X dans un environnement de travail que moi je trouve agréable à utiliser, mais ça c'est à toi de voir....

Et pis si je peux te donner mon avis tu peux commencer par du Java il me semble (enfin pour moi) que c'est plus simple que Cocoa mais cela reste à prouver... en tout cas commence à apprendre un langage orienté objet sinon cela ne va pas servir à grand chose...


----------



## gribouille (14 Octobre 2001)

<BLOCKQUOTE><font size="1" face="Verdana, Geneva">quote:</font><HR>Posté à l'origine par Simon:
*A noter que les outils du developeur ont été mis-à-jour (début octobre) dispo sur le site des developeur d'Apple...
*<HR></BLOCKQUOTE>

Ouyi mais pour y avoir acces y faut pas payer une cotisation ? ou être enregistré comme devellopeur pour les avoir ? même si on as eus le CD de devellopement avec le X.0 ?


----------



## @bou @n@ss (14 Octobre 2001)

<BLOCKQUOTE><font size="1" face="Verdana, Geneva">quote:</font><HR>Posté à l'origine par gribouille:
*

Ouyi mais pour y avoir acces y faut pas payer une cotisation ? ou être enregistré comme devellopeur pour les avoir ? même si on as eus le CD de devellopement avec le X.0 ?*<HR></BLOCKQUOTE>

Il me semble que l'enregistrement est devenu gratuit, et que l'on a pas à prouver qu'on est déjà programmeur


----------



## Didier Guillion (14 Octobre 2001)

Bonjour,

Le CD de développement est gratuit (il suffit de s'enregistrer chez Apple) mais représente tout de même 180Mo à télécharger !

Certains recommandent le langage RealBasic (je ne peut t'en dire plus, je ne l'ai jamais pratiqué)
Plus d'infos sur : http://www.realbasic.com/ 

Java semble une excellente idée pour commencer à développer, d'autant plus que c'est un language indépendant de l'ordinateur : ce que tu apprendra tu pourra le remettre en pratique très vite sur Windows ou autre système à fenêtre.

Cordialement


----------



## Floppy (7 Novembre 2001)

Qui peut citer une application sérieuse écrite en Java ?

J'hésite à m'investir dans cette voie.


----------



## Didier Guillion (7 Novembre 2001)

Bonjour,

Le probleme du Java est que ce que son code généré n'est pas très rapide mais par contre il est portable.
Je en connais pas d'appli commerciale écrite en JAVA (note que cela ne veut pas dire qu'il n'y en a pas)

Si tu cherche un langage fiable, portable et rapide prends le C, c'est ce que personnellement j'utilise pour du code qui tourne a la fois sur Mac et sur PC.

Mais attention,l'arme est a double tranchant, le C necessite une discipline d"écriture rigoureuse (presque monacale) pour devenir clair.

Par exemple, parmi les exemples écrits en C et fournit par Apple 9 sur 10 sont très mal écrit et quasiment illisible.

Si tu veux plus de renseignement sur le C, je reste a ta disposition.

Cordialement


----------



## Floppy (7 Novembre 2001)

Merci pour ton offre mais pour le C, je crois que depuis 10 ans que j'en fais, ça a commencé à entrer.

J'entends beaucoup parler du Java mais en tant que développeur, j'aimerais connaître quelques références - c-a-d appli commerciales ou progiciels écrits en Java.

Ca a quand même l'air d'être le désert. Le Java serait-il un langage pour étudiants en informatique ?

En revanche, je crois que je vais me lancer dans Objective-C. Ce langage me paraît avoir un certain avenir (en plus d'un passé certain).


----------



## Membre supprimé 2 (8 Novembre 2001)

Des appli importantes ecrites en Java???
euh, WebObject, ForteForJava, Jbuilder, jFig, HotSpot, LimeWire, etc...
Cocoa c'est en fait 2 API, ApplicationKit et Fondation, une API, c'est un peu comme une collections de chose deja faites que tu peux reutiliser sans avoir a reinventer la roue a chaque fois.

Cocoa permet l'appel de ces API a partir d'objC et de java.

Tu peux suivre les conseils de Didier les yeux fermes, c'est un grand pro ;-)

Un conseil personnel, si tu n'as jamais appris la prog, tu peux peut etre commencer par un language interprete plutot que compile. Ex, tcl, perl, sh, etc...

[07 novembre 2001 : message édité par William]


----------



## Floppy (8 Novembre 2001)

Merci pour vos bons conseils. Toutefois, je pense que certains ont cru que je suis une nouvelle incarnation d'Ymer qui a lancé cette discussion. Pas grave, il profitera de vos conseils.

Quant à moi, je programme depuis 20 ans. J'ai commencé avec 50 octets de RAM. Vous voyez de quoi je parle je pense.

Donc, pour le C, les API et l'algorithmique, ça va. Par contre je n'ai aucune expérience du développement sur Mac. Aujourd'hui, OS X et Cocoa me donnent envie de m'y mettre.

J'aimerais suivre des formations professionnelles chez Apple pour m'initier convenablement aux outils développeurs.

Qu'en pensez-vous ? Y a-t-il un programme de formation que vous pourriez me recommander ? Des liens internet ? Un n° de téléphone ?

Merci pour vos réponses futures.


----------



## Membre supprimé 2 (8 Novembre 2001)

il y a la conf WWDC tout les ans en mai, tres instructif, mais faut aller sur place, et c'est pas donne. 

Plus economique mais sans les contacts humains, l'integralite de la conf en DVD, plus de 80h de video ou on peu voir comment on met en pratique la theorie.

Pour la theorie, il y a le site d'apple, cote developpeurs

plus quelques sites de tutorial
www.cocoadev.com www.cocoa-x.com 
et d'autres

sinon, les projets opensource sur sourceforge.net ou ailleurs permettent de voir ce qui est possible en cocoa, 

un prog open source qui permet de compiler et d'editer du latex:
http://www.uoregon.edu/~koch/texshop/texshop.html


----------



## simon (13 Novembre 2001)

Moi je te conseil fortement de te mettre aux dpt en Java c'est trop la base, c'est pas trop dur et c'est vrai que le top du top c'est que c'est portable sur d'autre plateforme.
En plus OS X c'est parfait pour ça parce que ProjectBuilder donne tous les outils pour faire du developement en Java


----------



## Floppy (15 Novembre 2001)

<BLOCKQUOTE><font size="1" face="Verdana, Geneva">quote:</font><HR>Posté à l'origine par Simon:
*Moi je te conseil fortement de te mettre aux dpt en Java c'est trop la base...*<HR></BLOCKQUOTE>

Pardonne mon ignorance. Que signifie l'expression : "c'est trop la base" ?


----------



## Floppy (15 Novembre 2001)

<BLOCKQUOTE><font size="1" face="Verdana, Geneva">quote:</font><HR>Posté à l'origine par Didier Guillion:
*Je en connais pas d'appli commerciale écrite en JAVA (note que cela ne veut pas dire qu'il n'y en a pas)*<HR></BLOCKQUOTE>

 <BLOCKQUOTE><font size="1" face="Verdana, Geneva">quote:</font><HR>Posté à l'origine par William:
*Des appli importantes ecrites en Java???
euh, WebObject, ForteForJava, Jbuilder, jFig, HotSpot, LimeWire, etc...

Tu peux suivre les conseils de Didier les yeux fermes, c'est un grand pro ;-)
*<HR></BLOCKQUOTE>

Donc Didier Guillion qui est un grand pro (je n'ai pas le moindre doute sur ce point) ne connaît pas d'appli commerciale écrite en Java. LimeWire est un freeware, donc pas une appli commerçiale. Jbuilder est un outil de dev Java écrit en Java : intéressant... Les autres logiciels, je ne les ai pas trouvés sur VersionTracker. Ça laisse seulement WebObject comme référence.

J'ai donc deux étudiants apôtres du Java et un pro que je soupçonne d'être un vieux routier passé par Fortran, Lisp, Smalltalk, qui écrit le C comme Champollion les hiéroglyphes (et il a droit à toute ma sympathie pour ça   
	

	
	
		
		

		
		
	


	




 ) et qui préfère ce langage au Java pour le développement multiplateforme.

Désolé, les jeunes mais vous ne m'avez pas convaincu.

J'ai commencé la lecture d'Objective-C. Ça me parait aller plus loin que C++ dans la mise en oeuvre des objets. C'est plus proche de Smalltalk que du C, j'ai l'impression. De prime abord, la syntaxe me paraît abominable en revanche. Quelles sont vos opinions à ce sujet ? Didier ?

Ok, ObjC n'est pas portable sur windows. Mais... vous ai-je déjà parlé de mon opinion sur windows ?


----------



## Didier Guillion (15 Novembre 2001)

Bonjour,

Pour répondre à ta question, je ne peut que te donner mon avis. Ne considère surtout pas que c'est une vérité définitive.

Je pense qu'il faut aller plus loin dans le terme "langage", désolé si je reviens à la base mais cela peut intéresser les nouveaux en programmation qui lisent se fil de discoussion. J'ai, il y a quelques années, donné des cours de C a la Fac et mon cours commencait par ceci  (j'aime bien choquer les étudiants, ca reveille le matin):

"Un langage informatique est un langage qui permet de communiquer avec un ordinateur mais également un langage qui permet de communiquer avec d'autres programmeurs.
Il est donc composé de deux parties. 
La premiere de moindre importance, comporte les instructions (ordres donnés a la machine), La deuxieme partie, vitale, regroupe les commentaires (notes aux autres programmeurs et a soit meme)."

Ce détour pour dire, qu'il n'y a pas de "bon" ou de "mauvais" langages. Tout dépend de la manière dont on l'utilise.
Comme les langages parlés, certains sont plus adaptés a certaines choses.
En Francais, tu peut parler argo avec un vocabulaire de 500 mots, ou écrire de la poésie.

L'Anglais est mieux pour les chansons, le Francais pour la litterature, l'Allemand pour les Mathématiques, mais on a des chansons en Allemand, des maths en Anglais et de la littérature en Francais...

Les langages commes C++, Objective C (le C objet d'Apple), ou CSharp (C# le C Objet de Microsoft) sont par exemple, plus adaptés a la mise en place d'objet que le C, Pascal ou Assembleur, car ils proposent des mécanismes tout prets.

Donc voici ma réponse (enfin, ouf) :
Je en connait pas de langage informatique qui ne puisse etre clair, harmonieux et universel, il suffit qu'il soit bien utilisé et abondamment commenté.


Cordialement


----------



## simon (15 Novembre 2001)

<BLOCKQUOTE><font size="1" face="Verdana, Geneva">quote:</font><HR>Posté à l'origine par Floppy:
*

Pardonne mon ignorance. Que signifie l'expression : "c'est trop la base" ?*<HR></BLOCKQUOTE>

Dans le jargon bien de chez nous (ahh notre petite suisse bien sympatique avec ces charmants villages et ces vaches de toutes les couleurs), et ben l'expression "c'est trop de la base", veut dire que c'est vraiment trop cool...

Non plus sérieux, c'est vrai que je pensais pas te convaincre avec ça mais moi je dis tant que tu commences à bosser sur un langage orienté objet c'est tout bon. Mais si jamais tu te mets quand meme au Java et que tu as des questions tu peux toujours me contacter...et vu que c'est toi qui fait de l'Objective C c'est plutot moi qui vait te contacter...


----------



## SuperCed (16 Novembre 2001)

Si tu veux faire des applications rapidement et simplement, utilise RealBasic. Si tu veux en faire des plus optimisees, plus performantes, alors apprends le C, puis le C++ et enfin PowerPlant.


----------



## jmini (16 Novembre 2001)

<BLOCKQUOTE><font size="1" face="Verdana, Geneva">quote:</font><HR>Posté à l'origine par Didier Guillion:
*Certains recommandent le langage RealBasic (je ne peut t'en dire plus, je ne l'ai jamais pratiqué)
Plus d'infos sur : http://www.realbasic.com/ *<HR></BLOCKQUOTE>

  <BLOCKQUOTE><font size="1" face="Verdana, Geneva">quote:</font><HR>Posté à l'origine par SuperCed:
*Si tu veux faire des applications rapidement et simplement, utilise RealBasic. Si tu veux en faire des plus optimisees, plus performantes, alors apprends le C, puis le C++ et enfin PowerPlant.*<HR></BLOCKQUOTE>

Oui le Langage RealBasic est vraiment simple. Il est orienté Objet et ressemble au Visual-Basic de Microsoft.
Bien sur il ne vaut pas les outils puissants, et a des lacunes dans certains domaines, mais pour créer de petits utilitaires, C'est le Top. Nb exemples dispo ici

Il existe en francais . La version 3 a été traduite par Tri-Edre (des spécialistes). Bien que tri-Edre ait arrêté la distribution, on peut toujours l'acheter chez Alsyd (version 3.5 dispo en anglais uniquement)

Le logiciel est compatible OSX, Classic et 68k (la même licence donne acces à toutes les versions), les projets peuvent être repris sans Pb sans chacune des versions de l'appli

RB utilise parfaitement MAC OS (glisser déposer, apparence ou kaléidoscope, ....) et compile pour également pour Windows.

De plus pour les débutants les tutoriaux nb expliquent très bien la chose en Francais (pour moi qui ne parle pas Anglais...)

Enfin une version d'essais (30 jours) est disponible, avec le compilateur intégré (applis utilisable 5min)

*Vraiment à tous les débutants, je vous le conseille*

[15 novembre 2001 : message édité par jmini]


----------



## Einbert (16 Novembre 2001)

<BLOCKQUOTE><font size="1" face="Verdana, Geneva">quote:</font><HR>Posté à l'origine par Didier Guillion:
*

Donc voici ma réponse (enfin, ouf) :
Je en connait pas de langage informatique qui ne puisse etre clair, harmonieux et universel, il suffit qu'il soit bien utilisé et abondamment commenté.
*<HR></BLOCKQUOTE>

C'était très intéressant à lire tes propos. En effet, les théoriciens des langages de programmation rêveraient en effet de créer un langage universel qui puissent satisfaire tout le monde (il devrait peut-être essayé de scanner toute la Bible et finallement faire un petit coup de yacc là-dessus; qui sait ce que ça va donner ?  
	

	
	
		
		

		
			





 ) ; rien de plus difficile de faire un code efficace qui soit et à la fois lisible par l'humain et à la fois lisible par la machine...
C'est bien savoir que tu maîtrises bien le C, car ce semestre, on doit faire un projet et on a décidé de le faire en C (le prof proposait de le faire avec Delphi et fournissait déjà pas mal de code, surtout la partie du scanner et du parser)...Nous on veut de la difficulté  
	

	
	
		
		

		
		
	


	




 ; et c'est dans la difficulté qu'on apprend  
	

	
	
		
		

		
		
	


	




 .
Tu connaîtrais par hasard où je pourrais trouver les différentes options  à mettre dans printf pour qu'il affiche du texte en couleur ??

++


----------



## Einbert (16 Novembre 2001)

<BLOCKQUOTE><font size="1" face="Verdana, Geneva">quote:</font><HR>Posté à l'origine par Simon:
*

Dans le jargon bien de chez nous (ahh notre petite suisse bien sympatique avec ces charmants villages et ces vaches de toutes les couleurs), et ben l'expression "c'est trop de la base", veut dire que c'est vraiment trop cool...
*<HR></BLOCKQUOTE>
Je confirme les propos de Simon...Même dans le canton de Fribourg, ben c'est une expression connue...Par contre je ne dirais pas jargon, mais patoi  
	

	
	
		
		

		
		
	


	




 (je ne suis pas très sûr de l'orthographe de ce dernier) !!
Au fait, vous avez beaucoup de vaches dans le canton de Vaud ?  
	

	
	
		
		

		
		
	


	







  Moi, les vaches elles habitent devant ma fenêtre...Je mettrai une photo à l'occasion sur le forum si qqun veut  
	

	
	
		
		

		
		
	


	




 ! Comme la neige a fait son apparition, ben faudra attendre la fonte (pour ceux qui ne le savait pas, ben en hiver les vaches ne sont pas dehors  
	

	
	
		
		

		
		
	


	










 ) lol 

Pour revenir sur le sujet, moi je conseillerai C comme langage, car c'est the langage de Unix !! Si tu cherches plutôt un truc pour de faire de joli GUI, ben moi je dis Java  
	

	
	
		
		

		
		
	


	




 . 

++


----------



## Didier Guillion (16 Novembre 2001)

A propos des printf en couleur.

A mon avis ce n'est pas possible. Il y a une normalisation du mode console (printf, scanf) et cette console est monochrome.

Cordialement


----------



## Einbert (16 Novembre 2001)

<BLOCKQUOTE><font size="1" face="Verdana, Geneva">quote:</font><HR>Posté à l'origine par Didier Guillion:
*A propos des printf en couleur.

A mon avis ce n'est pas possible. Il y a une normalisation du mode console (printf, scanf) et cette console est monochrome.

Cordialement*<HR></BLOCKQUOTE>

Si, si, cela est possible...Je connais la commande pour la couleur jaune...Il y en a d'autres, mais ceux-ci je ne me rappelle plus...Donc voici ce qu'il y faut definir au debut de ton code
#define F_YELLOW() printf("\033[33m") /*pour afficher du texte en jaune*/
Donc pour afficher du texte en jaune dans la console,
F_YELLOW();
printf("Salut");
Petit probleme, le jaune reste la couleur de base par apres...Faudrait que je trouve la commande pour revenir a la normal quand je quitte le prog...Au cas ou,ben tu tapes man awk et pendant le defilement, ben il rechange automatiquement au noir !!
Donc si je trouve plus d'info, ben je te tiens au courant  
	

	
	
		
		

		
		
	


	




 .

++


----------



## simon (16 Novembre 2001)

pour ton printf en couleur tu peux essayer avec ces codes de couleur:

 <BLOCKQUOTE><font size="1" face="Verdana, Geneva">quote:</font><HR>
First, you see the %{\033[34m%} at the beginning to put the text in blue and you may remark near the end the %{\033[0m%} to reset the graphic mode and return to normal (grey) text.

The color codes you can use with this ANSI command are the following:
0 Reset colors to 37;40
1 Bold text. In reality, it's not really bold, text is only brighter.
5 Blinking text. Many terminal apps don't support this
7 Reverse video, inverts the background and the foreground colors
30 Black
31 Red
32 Green
33 Yellow
34 Blue
35 Magenta
36 Cyan
37 White
40 Black background
41 Red background
42 Green background
43 Yellow background
44 Blue background
45 Magenta background
46 Cyan background
47 White background

You can combine many color codes in the same command by separating them with a semi-comma (';'), for example, to have a bright blue text on red background you would insert this : %{\033[1;34;41m%}

<HR></BLOCKQUOTE>

Je les ai trouvé sur Macosxhints.com dans un article pour modifier la couleur du prompt, donc je pense que cela devrait aussi jouer pour le texte  
	

	
	
		
		

		
		
	


	




 tient nous au courant


----------



## simon (16 Novembre 2001)

Et pis je me refais un ptit post comme ça je suis à 400 posts  
	

	
	
		
		

		
		
	


	







 pour te donner l'adresse de l'article en question...

A+


----------



## Didier Guillion (16 Novembre 2001)

Salut,

Est tu sur de ne pas confondre entre le Terminal et la Console ?

J'ai essayé sur mon compilateur C (Codewarrior 6) et les couleurs de textes ne passent pas.

L'article sur lequel tu pointe est un article sur les commandes du Terminal.

Si quelqu'un arrive a quelque chose je suis preneur.

Cordialement


----------



## Einbert (16 Novembre 2001)

Bon, moi je teste toujours mes programmes a partir du terminal, que cela soit sur Sun ou chez moi avec mon petit terminal...Donc chez moi les couleurs sont modifiees...C'est peut-etre justement du parce que je fait les tests sur terminal !
Pourtant dans le livre que j'ai sur le C, il me semble qu'ils ne font pas reference que cela ne fonctionne que pour le terminal !
Faut que j'essaie ailleurs alors...
Encore merci pour l'adresse Simon !

Bon, j'ai un petit cours de math sur les automates qui m'attend...L'assistant vient juste de me chercher...

++


----------



## Einbert (17 Novembre 2001)

Juste faire attention a une chose...Pour le terminal il faut mettre des % , alors que dans le code C, ben il n'y en as pas...donc juste 033[40m donc printf("033[40m") par exemple...Je n'ai pas teste ce que je viens de noter, mais c'est dans le format suivant que cela se note
033]xxm ou xx est un nombre  
	

	
	
		
		

		
		
	


	




++


----------



## Didier Guillion (17 Novembre 2001)

Sur mon Compilateur, ca ne marche pas. Je pense que ces codes ne sont pas Ansi mais spécifiques a ton compilateur.

Tu utilise quoi ?

Cordialement


----------



## Einbert (17 Novembre 2001)

J'utilise le cc à partir du terminal...Tu es sûr que ce n'est pas ton compilateur qui a un problème  
	

	
	
		
		

		
		
	


	




 ... Non, alors je ne vois pas d'où peut venir le problème, si ce n'est justement que chez moi, ben vu que le lance le tout depuis le terminal, ben tout se passe donc dans le terminal... Mais à mon avis il doit bien y avoir une fonction qui doit permettre de changer le texte de couleur, sans quoi nous n'aurions pas la possibilité d'écrire du texte en couleur...Essaye donc de compiler une fois le tout dans le terminal et tu verras certainement une différence  
	

	
	
		
		

		
		
	


	




 ...

++


----------



## Didier Guillion (18 Novembre 2001)

Attends, attends, je croyais qu'on parlait C Ansi...

Je reitere donc ma question : Tu utilise quoi comme compilateur ?

As tu essayé ceci avec d'autres compilateur C sur d'autres plateformes ?

A mon avis cela marche chez toi mais n'est pas standard.

Cordialement


----------



## Einbert (18 Novembre 2001)

<BLOCKQUOTE><font size="1" face="Verdana, Geneva">quote:</font><HR>Posté à l'origine par Didier Guillion:
*Attends, attends, je croyais qu'on parlait C Ansi...

Je reitere donc ma question : Tu utilise quoi comme compilateur ?

As tu essayé ceci avec d'autres compilateur C sur d'autres plateformes ?

A mon avis cela marche chez toi mais n'est pas standard.

Cordialement*<HR></BLOCKQUOTE>

Est-ce que la commande fait partie du C ANSI, ben je sais pas, vu que je ne le connais pas par coeur  
	

	
	
		
		

		
		
	


	




 . Donc j'utilise cc et gcc comme compilateur (donc ceux-ci se basent bel et bien sur le C ANSI je pense) et j'ai déjà testé les commandes sur OS X et sur Sun... Et toi, tu utilises quoi comme compilateur ?? Et sur quels plateformes ??

++


----------



## Membre supprimé 2 (18 Novembre 2001)

ca ne viens pas du compilateur!

je pense que c'est stdout qui parse le flue.

Ex:
1) le meme binaire fonctionne en couleur dans le terminal

2)dans une appli cocoa ou je lance ce meme executable a l'aide d'un NSTask, et ou je redirige le stdout vers un NSPipe, et ou j'affiche le conenu de NSPipe dans un NSTextView, j'obtient ca:

{[34m}Hello World!

au lieu de 

{}Hello World! en bleu dans le terminal...


----------



## nexxen (18 Novembre 2001)

Je vois que c'est la panique à bord, les enfants !   
	

	
	
		
		

		
		
	


	




Les commandes dont vous parlez me semblent en effet concues pour Terminal, et ceci pour 2 raisons :

1) La séquence %{} n'est pas connue du C, ni du C++, ni d'objC.

2) la séquence "\033[40m" est tout simplement une séquance shell pour un terminal passif géré par terminfo ou termcap.

Sur ces terminaux (monochromes, rappelons-le), les attributs comme le reverse ou le souligné étaient passé au travers de séquences escapes : on envoyait le code escape suivi de codes ascii que reconnaissait le terminal.

Le \033 est tout simplement le code escape codé en base octale, une base numérique qui a été utilisée lgtps sous unix (je m'en sert encore pour coder les séquences termcap).

La séquence escape dont vous parlez et qui est sensée, si j'ai bien compris, affecter une couleur à un texte ne peut marcher que si l'émulateur de terminaux (chez nous, l'application Terminal) comprend cette séquence. Quant à l'utiliser avec printf(), le seul moyen est de transformer le beau 033 en code escape dans la chaine à afficher. Du genre :

printf("\e[40m");

puisque en C ANSI, \e = escape (0x1b).

Mais comme le résultat est fonction de ce que sait interpréter Terminal (c'est à dire malheureusement pas grand chose), ne vous étonnez pas si ca ne marche pas.


----------



## Membre supprimé 2 (18 Novembre 2001)

merci pour cette precision,

j'avais pas completement faux en disant que c'etait la sortie standard qui interpretait le flux, non?

c'est vrais que le "\033" aurait du me mettre la puce a l'oreille.


voila un Hello World en couleur dont je me suis servi pour faire les tests ;-) 

#include &lt;stdlib.h&gt;
#include &lt;stdio.h&gt;

int main(int argc,char ** argv)
{
  printf("%\e[34m%H%\e[33me%\e[32ml%\e[31ml%\e[35mo %\e[0mW%\e[35mr%\e[36mo%\e[\
34ml%\e[31md!%\e[0m\n");
  return 0;
}


----------



## Einbert (19 Novembre 2001)

Sans les % , ben ça marche aussi...Petie question : Est-ce que cela permet d'afficher alors du texte en couleur avec n'importe quel compilateur de C standard ??

++


----------



## Membre supprimé 2 (19 Novembre 2001)

n'importe quel compilateur qui permet d'executer le binaire dans un terminal.

donc pas code warrior...


----------



## Didier Guillion (19 Novembre 2001)

Et a mon avis tout compilateur hors du monde UNIX/Linux donc tous les compilateurs sur Windows.

Cordialement


----------



## Membre supprimé 2 (19 Novembre 2001)

les compilo sous windows permettent de faire des .exe pour dos, mais dos n'emule pas un terminal alphanumerique, non?


----------



## Didier Guillion (19 Novembre 2001)

Si mes souvenirs sont bons, en partie si.
Le mode ligne du Dos, réagit comme un terminal avec meme les redirections par &lt; et &gt;.

Cordialement


----------



## Membre supprimé 2 (19 Novembre 2001)

A priori, je penserais que non...
mais, honettement, je ne sais pas. ;-)


----------

